1、linux中安装docker、docker-compose前提下
2、docker-compose文件内容
version: '3.8'
services:
#服务名称
sqlserver-db:
restart: always
#容器名称
container_name: sqlserver-db
#镜像名称
image: microsoft/mssql-server-linux:latest
#端口映射
ports:
- 1433:1433
#挂载
volumes:
- /data/mssql:/var/opt/mssql/data
#环境变量
environment:
- ACCEPT_EULA=Y
#SA用户密码长度必须至少为 8 个字符,并包含以下四组中的三组字符:大写字母、小写字母、10 位基数和符号
- SA_PASSWORD=root@1234
mysql-db:
privileged: true
image: docker.io/mysql:latest #使用的镜像
restart: always
container_name: mysql-db #容器名
volumes:
- /data/mysql:/var/lib/mysql #挂载目录,持久化存储
ports:
- 3306:3306
environment:
TZ: Asia/Shanghai
MYSQL_ROOT_PASSWORD: root@1234 #设置root用户的密码
redis:
# 镜像名 如果需要指定版本 就把 : 后面换成版本号
image: redis:latest
# 容器名
container_name: redis
# 重启策略
restart: always
# 端口映射
ports:
- 6379:6379
volumes:
# 配置文件映射
- /data/redis/redis.conf:/usr/local/etc/redis/redis.conf
- /data/redis/data/redisata:/data
- /etc/localtime:/etc/localtime:ro
# 额外配置 密码之类
command: ["redis-server", "--appendonly", "yes", "--requirepass","root@1234"]
oracle-db:
hostname: oracle-db
image: sath89/oracle-xe-11g:latest
restart: always
container_name: oracle-db
expose:
- 1521
privileged: true
environment:
- TZ=Asia/Shanghai
- DOCKER_CLIENT_TIMEOUT=120
- COMPOSE_HTTP_TIMEOUT=120
- ORACLE_PDB=system #默认数据库
- ORACLE_PWD=oracle #oracle system用户的密码
- ORACLE_CHARACTERSET=AL32UTF8
volumes:
- /data/oracle-11g/data:/u01/app/oracle
ports:
- 1521:1521
mongo-db:
image: mongo:latest # 选择mongodb版本
container_name: mongo-db
restart: always # 自启动
ports:
- 27017:27017 # 映射宿主机端口
volumes:
- /data/mongo/data/db:/data/db # 挂载数据文件,根据实际路径修改 :前的路径
- /data/mongo/data/log:/var/log/mongodb # 挂载日志文件,根据实际路径修改 :前的路径
- /data/mongo/data/config:/etc/mongo # 挂载配置文件,根据实际路径修改 :前的路径
portainer:
image: docker.io/portainer/portainer:latest
container_name: portainer
command: -H unix:///var/run/docker.sock
restart: always
ports:
- 9000:9000
- 8000:8000
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /data/portainer/portainer_data:/data
2、将文件命名为 docker-compose.yaml 文件
docker-compose up -d