阿里云服务器 Ubuntu 18.04 Docker安装配置Nginx、Mysql、PHP、Redis容器服务

一、Docker Compose 概述与安装。

使用 Docker Compose 可以轻松、高效的管理容器。
安装 Docker Compose 可以通过下面命令自动下载适应版本的 Compose,并为安装脚本添加执行权限。参考官方安装地址。

#运行以下命令以下载Docker Compose的当前稳定版本:
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
#将可执行权限应用于二进制文件:
sudo chmod +x /usr/local/bin/docker-compose

如果下载不了参考如下方法安装:

#安装pip
apt install python-pip
#升级到最新
pip install --upgrade pip
#升级后使用以下命令清除哈希表中的所有记录才能正常使用
hash -r
#查看版本
pip -V
#我的版本:pip 20.0.2 from /usr/local/lib/python2.7/dist-packages/pip (python 2.7)
#安装 docker-compose
pip install docker-compose
docker-compose -v
#我的版本:docker-compose version 1.25.4, build unknown

二、安装Docker

官方安装地址。

#安装Docker
apt install docker.io
docker -v
#我的版本:Docker version 19.03.6, build 369ce74a3c

三、通过容器镜像快速构建容器服务

如果想制作自己的容器镜像参看上一篇
参考目录结构

阿里云服务器 Ubuntu 18.04 Docker安装配置Nginx、Mysql、PHP、Redis容器服务_第1张图片
目录结构

docker-compose.yml配置文件

version: '3'

networks:
  backend:
    driver: bridge

  # 定义四个服务nginx,php,mysql,redis
services:
  nginx:
    # 依赖php服务,意味着在启动nginx之前先启动php
    depends_on:
      - php-fpm
    # nginx镜像的路径
    image: registry.cn-shenzhen.aliyuncs.com/yxyong/nginx
    volumes:
      - ./website:/var/www:cached
      - ./logs/nginx:/var/log/nginx
      - ./conf/nginx/sites:/etc/nginx/sites-available
      - ./conf/nginx/ssl:/etc/nginx/ssl
    # nginx意外退出时自动重启
    restart: always
    # 映射80和443端口
    ports:
      - "80:80"
      - "443:443"
    # 容器名称
    container_name: nginx
    networks:
      - backend

  php-fpm:
    depends_on:
      - mysql
      - redis
    image: registry.cn-shenzhen.aliyuncs.com/yxyong/php
    restart: always
    volumes:
      #- ./conf/php/php.ini:/usr/local/etc/php/php.ini
      - ./website:/var/www:cached
    container_name: php-fpm
    networks:
      - backend
      
  mysql:
    image: registry.cn-shenzhen.aliyuncs.com/yxyong/mysql
    volumes:
      - ./conf/mysql/my.cnf:/etc/mysql/conf.d/my.cnf
      - ./data/mysql:/var/lib/mysql
    restart: always
    # 设置MYSQL_ROOT_PASSWORD环境变量,这里是设置mysql的root密码。这里为wanphp@1314。
    environment:
      MYSQL_ROOT_PASSWORD: wanphp@1314
      TZ: PRC
    ports:
      - "13306:3306"
    container_name: mysql
    networks:
      - backend

  redis:
    image: registry.cn-shenzhen.aliyuncs.com/yxyong/redis
    volumes:
    #  - ./conf/redis/redis.conf:/usr/local/etc/redis.conf
      - ./data/redis:/data
    restart: always
    ports:
      - "16379:6379"
    container_name: redis
    networks:
      - backend

我的目录结构地址:https://code.aliyun.com/yxyong/mynmpr/tree/master/wwwroot

进入webroot目录运行docker-compose up -d即可。

查看容器运行

你可能感兴趣的:(阿里云服务器 Ubuntu 18.04 Docker安装配置Nginx、Mysql、PHP、Redis容器服务)