version: '3.4'
services:
apj.image_name: # 服务名称,用于重启,启动,暂停等操作
image: monksoul/image_name # 可以动态构建,指定构建后的名称
container_name: container_name # 运行时的容器名称
build: # 构建参数
context: . # 指定当前路径
dockerfile: Dockerfile # Dockerfile文件名
volumes: # 数据卷
- ${APPDATA}/Microsoft/UserSecrets:/root/.microsoft/usersecrets:ro
- ${APPDATA}/ASP.NET/Https:/root/.aspnet/https:ro
depends_on: #依赖项
- apj.mysql
expose: #导出80端口
- 80
ports: # 绑定端口
- 8082:80
links: # 配置域网络 (已被弃用,推荐 networkds)
- apj.mysql:link_sql
external_links: 连接外部网络(非当前docker-compose构建的)
- other.mysql:link_sql2
environment: # 配置环境变量
- NAME=monk
networks: # 指定网络类型
- webnet
apj.mysql:
image: mysql
restart: always
container_name: monk.mysql
environment:
- MYSQL_ROOT_PASSWORD=123456
ports:
- 3306:3306
networks:
- webnet
deploy: # 部署方式
replicas: 5 # 克隆5个,一键部署多个容器当前
resources: # 配置资源
limits: # 资源配置
cpus: "0.1" # 本机cpu的10%
memory: 50M # 当前容器最大内存
restart_policy: # 重启策略
condition: on-failure # 条件:失败就重启
networks: # 创建新的网络类型
webnet:
driver: bridge # 网络方式:桥接或集群
docker-compose -f new-name.yml up
docker-compose -f new-name.yml ps