docker compose连接多容器
先linux安装compose

nginx ghost mysql 三个镜像 ,创建三个文件夹
ghost 镜像
touch Dockerfile:
FROM ghost
COPY ./config. js /var/Lib/ghost/config. js 官方镜像
EXPOSE 2368
CMD ["Inpm","start","--production"] 启动命令
配置文件:下载一个本地的配置文件,例如(php.ini等)
nginx镜像
touch Dockerfile:
FROM nginx
COPY nginx.conf /etc/nginx/nginx. conf
EXPOSE 80
配置文件:nginx.conf
例子:worker processes 4,
events {worker connections 1024;}
http{
server {
Listen 80;
Location /{
proxy_pass http://ghost-app:2368; //反向代理到ghost
}
}
}
mysql镜像: docker pull 下来
合并:
touch docker-compose yml
networks:
ghost: 创建网络
services:
ghost-app:
build: ghost build创建的镜像
networks:
- ghost。 所属网络
depends_ on:db 依赖数据库,创建有先后顺序
ports:2368:2368 映射服务器端口
nginx:
build:nginx
networks:
-ghost
depends_on:ghost-app
ports:80:80
db:
image: " mysql: 5. 7. 15 pull 创建镜像
networks:
-ghost
environment:和(php.ini等)设置一样
MYSQL__PASSWORD: mysqlroot
MYSQL_USER: ghost
MYSQL_PASSWORD: ghost
volumes:
$PWD/data:/var/lib/mysql 永久载入数据,即:docker关闭数据还在
ports:3306:3306
docker-compose up -d 启动
出现错误:
docker-compose stop 关闭
docker-compose rm 删除所有
如果nginx.conf或者其他文件修改,需要重新构建
docker-compose build

参考:https://www.jianshu.com/p/0561d3cfccda

浙公网安备 33010602011771号