OpsManage
OpsManage copied to clipboard
docker-compose方式启动ops_web服务失败
Opsmanage根目录下,构建镜像: docker build -t opsmanage-base -f docker/Dockerfile . docker build -t opsmanage-app -f docker/Dockerfile-app .
docker-compose.yaml文件配置
version: "3"
services:
db:
image: mysql:5.6
environment:
- MYSQL_HOST=localhost
- MYSQL_DATABASE=opsmanage
- MYSQL_USER=root
- MYSQL_PASSWORD=12345
- MYSQL_ROOT_PASSWORD=12345
volumes:
- /data/apps/mysql:/var/lib/mysql
restart: always
networks:
- default
redis:
container_name: redis
image: redis:3.2.8
command: redis-server
ports:
- "16379:6379"
volumes:
- /data/apps/redis:/data/redis
networks:
- default
rabbitmq:
container_name: rabbitmq
image: rabbitmq:management
ports:
- "5672:5672"
- "15672:15672"
networks:
- default
ops_web:
image: opsmanage-app:latest
container_name: ops_web
environment:
MYSQL_DATABASE: opsmanage
MYSQL_USER: "root"
MYSQL_PASSWORD: "12345"
ports:
- "8000:8000" #vim /mnt/OpsManage/OpsManage/settings.py文件里面的DEBUG设置为DEBUG = True
volumes:
- /mnt/OpsManage:/data/apps/opsmanage
- /mnt/OpsManage/upload:/data/apps/opsmanage/upload
- /mnt/OpsManage/logs:/data/apps/opsmanage/logs
command: bash /data/apps/opsmanage/docker/start.sh
links:
- db
- redis
- rabbitmq
depends_on:
- db
- redis
- rabbitmq
restart: always
networks:
- default
nginx:
image: opsmanage-nginx
container_name: nginx
ports:
- "80:80"
volumes:
- /mnt/OpsManage/static:/usr/share/nginx/html/static
depends_on:
- ops_web
links:
- ops_web:ops_web
networks:
- default
networks:
default:
启动docker-compose up -d,发现ops_web启动失败,错误日志提示找不到文件。
你得git clone源码下来,docker-compose里的volumes定义的/mnt/OpsManage默认是没有的,你把clone的源码放这个目录,这样代码会同步到docker容器内。