我有几个服务在我的docker-compose文件中,看起来像这样:
version: '3.7'
services:
web:
build: ./
command: gunicorn --bind 0.0.0.0:5000 --workers 2 --worker-connections 5000 --timeout 6000 manage:app
volumes:
- ./:/usr/src/app/
- static_volume:/usr/src/app/static_files
expose:
- 5000
env_file:
- ./.env.prod
depends_on:
- mongodb
mongodb:
image: mongo:4.4.1
restart: unless-stopped
command: mongod
ports:
- '27017:27017'
environment:
MONGODB_DATA_DIR: /data/db
MONDODB_LOG_DIR: /dev/null
MONGO_INITDB_ROOT_USERNAME:
MONGO_INITDB_ROOT_PASSWORD:
volumes:
- mongodbdata:/data/db
nginx:
build: ./nginx
volumes:
- static_volume:/usr/src/app/static_files
ports:
- 5001:8000
depends_on:
- web
volumes:
mongodbdata:
static_volume:
我在Docker Hub账户上有一个公共仓库,我希望将我的应用程序中的所有镜像推送到该仓库中,有人可以帮忙吗?
docker-compose
构建一个镜像时,它将会有一个名称。就像任何其他镜像一样,只需使用docker tag
和docker push
这些镜像即可。 - larsksdocker-compose.yml
文件本身;您需要删除一些volumes:
才能在另一个系统上使用它,并且它将不具有当前系统的 MongoDB 数据或您挂载到容器中的静态文件的备用版本。 - David Maze