Dockers
规格
以下预制 docker 镜像可用:
Name |
fdi |
httppool |
Description |
linux with fdi tested and ready to run. |
Apache HTTPPool server, tested and started. |
Base |
Ubuntu 18.04 (~268MB compressed) |
fdi (~271MB compressed) |
Installed |
Package and DEV, SERV dependencies. |
Package and DEV, SERV dependencies. |
User in docker |
|
``apache``(Convenience links in home dir.) |
Pull |
|
|
Build |
|
|
Launch |
|
|
Entrypoint |
|
|
Ports |
-- |
9884 |
在 fdi 的包根目录下运行 make
命令。
配置
构建和启动命令需要一个名为 .secret
的文件。 这是一个示例 .secret
HOST_PORT=9884
HOST_USER=...
HOST_PASS=...
MQ_HOST=123.45.67.89
MQ_PORT=9876
MQ_USER=...
MQ_PASS=...
服务器凭据在服务器启动期间设置,当 pnslocal.py
配置文件被加载时。 pnslocal.py
和其他配置文件在 docker 启动时由 Entrypoint 文件(见上表)更新。入口点文件使用环境变量,这些变量由命令行使用 --env-file
设置,以便敏感信息不会留在命令行上。
更方便的命令
登录最新构建的运行容器:
make it
停止最新构建的运行容器:
make rm_docker
删除最新构建的运行容器和镜像:
make rm_dockeri
在 httppool
docker 更新中观察 /var/log/apache2/error-ps.log
(启动后):
make t
小技巧
如果您看到未找到日志文件的错误,则您错误地运行了 fdi
docker。 只有池服务器 docker 有日志。
在本地制作图像
下面展示了如何自己构建 docker 镜像。
首先创建一个虚拟环境:
virtualenv -p python3.6 poolserver
cd poolserver
. bin/activate
然后按照 开发者安装及注意事项 中的说明安装 fdi,例如
git clone http://mercury.bao.ac.cn:9006/mh/fdi.git
cd fdi
git checkout develop
make install EXT="[DEV,SERV]"
如果需要,修改 docker_entrypoint.sh
。
现在你可以轻松地制作 fdi
docker:
make build_docker
要构建 httppool
映像,请修改 fdi/pns/resources/httppool_server_2.docker
中的 FROM
行以删除 mhastro/
。
如有必要可修改 fdi/pns/resources/httppool_server_entrypoint.sh
制作 httppool
图像
make build_server