构建docker映像并使用docker-compose部署到映像/容器注册表?

问题描述 投票:0回答:1

我有以下docker-compose.yml文件:

docker-compose.staging.yml

version: '3.7'

services:
  web:
    restart: always
    build: ./django
    expose:
      - "8000"
    volumes:
      - django-static:/usr/src/app/static
      - django-uploads:/usr/src/app/uploads
    environment:
      DJANGO_POSTGRES_REMOTE: 'True'
      DJANGO_POSTGRES_HOST: myservername.postgres.database.azure.com
      DJANGO_POSTGRES_PORT: '1234'
      DJANGO_POSTGRES_NAME: dbname
      DJANGO_POSTGRES_USER: dbuser
      DJANGO_POSTGRES_PASS: dbpassword
      DJANGO_SECRET_KEY: 
      DJANGO_DEBUG: 1
      DJANGO_TESTING: 0
      DJANGO_WAVE_API_VERSION: '1'
      DJANGO_WAVE_SUPERUSER_USERNAME: ''
      DJANGO_WAVE_SUPERUSER_PASSWORD: ''
      DJANGO_WAVE_SUPERUSER_EMAIL: ''
      DJANGO_BUGSNAG_LOGGING_ENABLED: 0
      DJANGO_BUGSNAG_API_KEY: ''
      DJANGO_ROOT_DOMAIN: ''
      DJANGO_MEMCACHED_ON: 'False'
      VUE_ROOT_DOMAIN: ''

    command: /usr/src/app/wave.sh

  nginx:
    build:
      context: nginx
      dockerfile: Dockerfile
    restart: on-failure
    ports:
      - 80:80
      - 443:443
    volumes:
      - ssl_data:/etc/resty-auto-ssl
    environment:
      ALLOWED_DOMAINS: "${STAGING_ALLOWED_DOMAINS}"
      SITES: "${STAGING_SITES}"

volumes:
  ssl_data:
  django-static:
  django-uploads:

我已经用代码测试了这个docker-compose文件的构建过程,并且全部部署正常:

docker-compose -f docker-compose.staging.yml up --build

我的问题是,我通常使用docker-machine自动部署,这会部署一个新的虚拟机。

但是,我想知道,使用docker-compose将该程序作为图像发布到诸如docker hub之类的docker注册表的过程是什么?我试图寻找答案,但似乎找不到任何东西?

Q。我是否要从两个服务构建两个图像?

非常感谢您提供有关如何将代码从docker-compose.yml文件部署到Docker中心(或类似中心)的帮助!

docker docker-compose docker-machine dockerhub
1个回答
0
投票

您没有部署到DockerHub。您推送到docker hub。希望此命令可能是您要查找的内容:https://docs.docker.com/compose/reference/push/

© www.soinside.com 2019 - 2024. All rights reserved.