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

 

posted @ 2019-11-27 16:47  星云惊蛰  阅读(650)  评论(0)    收藏  举报