docker、docker-compose部署nginx、mysql、redis

Docker部署项目安装文档

一、服务器环境:

腾讯云服务器环境:

2核4 G

Centos 8.0

二、安装docker

  1. 如果安装有docker先卸载

sudo yum remove docker \

              docker-client \

              docker-client-latest \

              docker-common \

              docker-latest \

              docker-latest-logrotate \

              docker-logrotate \

              docker-engine
  1. 添加阿里云镜像

sudo yum install -y yum-utils

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

  1. 选择docker特定版本安装

sudo yum install docker-ce-20.10.9 docker-ce-cli-20.10.9 containerd.io docker-compose-plugin

  1. 启动docker

sudo systemctl start docker

  1. 验证

sudo docker run hello-world

docker version

  1. 安装docker-compose

<u>https://github.com/docker/compose/releases</u>

下载docker-compose-linux-x86_64,并改名为docker-compose放在/usr/local/bin目录下

sudo chmod +x /usr/local/bin/docker-compose //将可执行权限应用于二进制文件

sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose //创建软链

docker-compose --version //测试是否安装成功

三、安装环境

1. 安装mysql

安装最新的

docker search mysql

docker pull mysql:latest

指定版本安装

访问https://hub.docker.com/_/mysql/tags

选择版本

docker pull mysql:8.0

创建mysql容器

docker run -itd --name mysql_1 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql //创建容器(后续采用docker-compose统一创建容器)

2. 安装redis

docker pull mysql:latest

docker run -itd --name redis_1 -p 6379:6379 redis //创建容器(后续采用docker-compose统一创建容器)

3. 安装nginx

docker pull nginx:latest

docker run --name nginx_1 -p 8001:80 -d nginx //创建容器(后续采用docker-compose统一创建容器)

开放端口

firewall-cmd --zone=public --add-port=8001/tcp --permanent //开放端口

firewall-cmd --reload //网关重启

4. 安装docker-compose

进行容器的统一管理

4.1 nginx配置文件

mkdir conf.d data logs

创建文件/opt/ywonchian/nginx/conf.d/nginx.conf

server{

   listen 80;       #监听端口号

   server_name localhost;         #主机名,这里是本地部署所以为localhost

   charset utf-8;          #字符编码为utf-8

   location / {

       root /etc/nginx/html;           #转发到html目录下的静态文件

       index index.html index.htm;

   }

   error_page 500 502 503 504 /50x.html;

   location = /50x.html {

       root /usr/share/nginx/html;

   }

}

4.2 mysql配置文件

mkdir conf.d data logs

创建/opt/ywonchian/mysql/conf.d/my.conf

[mysqld]

user=mysql

default-storage-engine=INNODB

character-set-server=utf8

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

4.3 redis配置文件

mkdir conf data logs

创建/opt/ywonchian/redis/conf/redis.conf

requirepass 123456

appendonly yes

4.4创建docker-compose.yml

创建文件/opt/ywonchian/docker-compose.yml

version: '3'

services:

nginx:

image: nginx

container_name: nginx_latest_1

ports:

  - 80:80

  - 443:443

volumes:

  - ./data/html:/etc/nginx/html

  - ./nginx/conf.d/:/etc/nginx/conf.d

restart: always

mysql:

image: mysql

container_name: mysql_8.0_1

ports:

  - 3306:3306

environment:

  - MYSQL_ROOT_PASSWORD=123456

  - TZ=Asia/Shanghai

restart: always

volumes:

  - ./mysql/conf:/etc/mysql/conf.d

  - ./mysql/data:/var/lib/mysql

  - ./mysql/logs:/logs

redis:

image: "redis:latest"

container_name: redis_single_1

restart: always

ports:

  - "6379:6379"

volumes:

  - ./redis/conf/redis.conf:/etc/redis/redis.conf

  - ./redis/data:/data

command:

  redis-server /etc/redis/redis.conf --appendonly yes

4.5创建容器并启动

docker-compose up -d //-d后台启动

docker-compose down #停止

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容