在我的本地计算机上,我拥有此文件以便创建用于开发的docker映像
docker-compose.yml:
version: '2'<br>
services:<br>
nginx:<br>
container_name: nginx-angular<br>
image: nginx-angular
build:
context: ./frontend
dockerfile: /.docker/nginx.dockerfile
ports:
- "80:80"
- "443:443"
depends_on:
- web
web:
container_name: django-app
build:
context: ./backend
dockerfile: /django.dockerfile
command: python manage.py runserver 0.0.0.0:8000
ports:
- "8000:8000"
depends_on:
- db
environment:
PROD_ENV_FRONTEND_BASE_URL: http://192.168.99.100/
MODE_ENV: PROD
db:
container_name: django-db
image: postgres:10
当我构建应用程序(docker-compose构建)时,正在创建7个docker映像,而当我运行应用程序(docker-compose up)时,正在运行3个容器(yml文件中的每个服务1个) 。
第一季度
我必须通过ECR传递EC2,只有与运行中的容器相对应的3个图像,还是所有7个图像?
请注意,在EC2中,我为数据库使用RDS而不是docker容器。
因此,这是yml,用于创建要发送到EC2的docker映像:
docker-compose-aws.yml:
version: '2'
services:
nginx:
container_name: nginx-angular
image: nginx-angular
build:
context: ./frontend
dockerfile: /.docker/nginx.dockerfile
ports:
- "80:80"
- "443:443"
depends_on:
- web
web:
container_name: django-app
build:
context: ./backend
dockerfile: /django.dockerfile
command: python manage.py runserver 0.0.0.0:8000
ports:
- "8000:8000"
environment:
PROD_ENV_FRONTEND_BASE_URL: <wy_web_app_domain>
MODE_ENV: PROD_AWS
DB_USER: postgres_user
DB_NAME: postgres_db
DB_PASSWORD: <db_password>
DB_HOST: <host_of_my_RDS_DB>
第二季度
无论如何,如何在AWS EC2中运行我的应用程序?我是否要创建一个新的“ .yml”文件,以使用已经通过ECR传递给EC2的图像?