博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用 Docker Compose 管理多个容器实例
阅读量:6432 次
发布时间:2019-06-23

本文共 2130 字,大约阅读时间需要 7 分钟。

hot3.png

说明

Docker Compose 是用来定义和运行复杂 docker 应用的编排工具。你可以在 docker-compose.yml 文件中定义一个或多个容器应用,以及他们的依赖关系、网络、构建等内容。

安装Docker Compose

准备工作

随便找个地方,创建一个目录,如: ghost。后续所有操作均在此目录中进行。在创建 nginxghost 两个目录

nginx 配置

  • 在nginx目录中创建 Dockerfile 文件,内容如下:
FROM nginxCOPY nginx.conf /etc/nginx/nginx.confEXPOSE 80
  • 再创建nginx.conf配置文件,内容如下:
worker_processes 4;events {    worker_connections 1024;}http {    server {        listen 80;        location / {            proxy_pass http://ghost-app:2368;        }    }}

mysql 配置

  • 在ghost目录中创建Dockerfile文件,内容如下:
FROM ghost:1-alpineCOPY ./config.js /var/lib/ghost/config.jsEXPOSE 2368
  • 再创建config.js配置文件,内容如下:
var path = require('path'),    config;config = {    production: {        url: 'http://my-ghost-blog.com',        mail: {},        database: {            client: 'mysql',            connection: {                host: 'db', // docker-compose.yml 文件中定义的services名字: db                user: 'ghost',                password: '12345',                database: 'ghost',                port: '3306',                charset: 'utf8'            },            debug: false        },        paths: {            contentPath: path.join(process.env.GHOST_CONTENT, '/')        },        server: {            host: '0.0.0.0',            port: '2368'        },    }}// Export configmodule.exports = config;

最后编写 docker-compose.yml

内容包含了,mysql数据库,nginx,ghost轻博客。具体如下:

version: '3' # compose文件的版本号networks:  blog:services:  ghost-app: # 主机名或服务名    build: ghost    restart: always    networks:      - blog    depends_on: # 依赖关系      - db    ports: # 与宿主机端口映射关系      - "2368:2368"  nginx:    build: nginx    networks:      - blog    depends_on:      - ghost-app    ports:      - "8089:80"  db:    image: "mysql:5.7.15"    networks:      - blog    environment:      MYSQL_ROOT_PASSWORD: mysqlroot      MYSQL_USER: ghost      MYSQL_PASSWORD: 12345    volumes:      - $PWD/data:/var/lib/mysql    ports:      - "3307:3306"

最终的目录结构如下:

启动应用

  • 执行命令:docker-compose up -d 会出现如下图内容,且不报错,则基本成功了。

  • 验证,浏览器地址栏输入: http://localhost:2368/,可以请问,且出现如下图,则成功启动服务:

  • 管理后台: http://localhost:2368/ghost,如下图,自行创建账号密码即可管理了。

转载于:https://my.oschina.net/who7708/blog/3005939

你可能感兴趣的文章
Linux学习(十一):不可忽略的Linux支持的文件系统
查看>>
[转]VC++中操作XML(MFC、SDK)
查看>>
WiFi连接风险造成个人信息外泄 网络安全需加强
查看>>
2017(中国)商博会系列介绍之智能生活展
查看>>
eclipse link方式安装 sts(Spring Tool Suite)
查看>>
数据结构思维 第三章 `ArrayList`
查看>>
CentOS6、7编译安装FFmpeg
查看>>
被眼睛欺骗?这正是你比机器高明的地方!深度学习如何处理认知错觉
查看>>
向导机器人出没日本机场,外表萌萌哒!
查看>>
Android项目实战(二十九):酒店预定日期选择
查看>>
PHP IDE phpstorm 常用快捷键
查看>>
蓝牙的未来怎样发展?
查看>>
AI、新材料、5G、智慧城市,未来的社会场景在高交会提前上演
查看>>
Facebook开发的一种数据查询语言——GraphQL:安全概述和测试技巧
查看>>
ECS主动运维2.0,体验升级,事半功倍
查看>>
vim 学习方法
查看>>
php token验证范例
查看>>
WebSocket的C++服务器端实现
查看>>
java中两种添加监听器的策略
查看>>
MySQL explain 详解
查看>>