docker部署mysql,redis,nginx亲测可用

一.mysql部署

1.拉取mysql镜像

docker pull centos/mysql-57-centos7

2.创建容器

docker run -di --name=testmysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 centos/mysql-57-centos7

-p 代表端口映射 格式为 宿主机端口:docker容器运行端口

-e 代表添加环境变量 MYSQL_ROOT_PASSWORD是root的登陆密码

3.进入testmysql容器中

docker exec -it testmysql/bin/bash

4.开启远程访问权限

use mysql;

select host,user from user;

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

flush privileges;

二.Redis部署

1.拉取redis

sudo docker pull redis

2.查看镜像

docker images

3.做文件挂载

(1)在服务器创建挂载的目录和配置文件

mkdir  /usr/local/docker/redis/data

mkdir /usr/local/docker/redis/conf

在conf里面创建一个redis.conf

touch redis.conf

redis.conf文件

#bind 127.0.0.1 //允许远程连接
protected-mode no appendonly yes //持久化
requirepass 123456 //密码

(2)运行redis 的docker容器

sudo docker run -p 6380:6379 --name myredis -v /usr/local/docker/redis/conf/redis.conf:/etc/redis/redis.conf  -v /usr/local/docker/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes

–name:给容器起一个名
-p:端口映射 宿主机:容器
-v:挂载自定义配置 自定义配置:容器内部配置
-d:后台运行
redis-server --appendonly yes: 在容器执行redis-server启动命令,并打开redis持久化配置

(3)进入redisdocker容器

docker exec -it myredis redis-cli

注:如果出现该错误: (error) NOAUTH Authentication required.

说明没有输入密码进行验证,请输入:auth 你的密码

三.Nginx部署

拉取Nginx镜像

docker pull nginx

运行nginx镜像

docker run -di --name="myNginx" -p 70:80 nginx

进入到nginx容器里

docker exec -it mysql /bin/bash

进入nginx所在位置

cd /etc/nginx/

进入到conf.d文件夹中查看html所在位置为 /usr/share/nginx/html;

利用docker cp 命令将前端文件拷进docker中

猜你喜欢

转载自blog.csdn.net/Chen_leilei/article/details/113097944