Docker 环境搭建 PHP、Nginx、Mysql

环境:

1、阿里云服务器 ESC

2、centos 7.6

3、本机Mac pro

一、更新yum


Docker 环境搭建 PHP、Nginx、Mysql

更新yum

二、配置镜像源及依赖

1、添加docker的阿里源

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

2、安装docker 依赖包

yum install -y yum-utils device-mapper-persistent-data lvm2

三、安装启动

1、安装(社区免费版)

yum install docker-ce -y

2、启动docker

systemctl start docker 启动

systemctl restart docker 重启

systemctl enable docker 设置开机启动

3、安装docker阿里云加速器

(1)登录阿里云服务器,进入控制台,打开 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

复制加速器地址

(2)配置镜像加速器

针对Docker客户端版本大于 1.10.0 的用户,在页面下面选择自己的系统,用第(1)步中复制的地址替换下面代码中红色部分

您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json

"https://o8i41m6u.mirror.aliyuncs.com",

"https://dockerhub.azk8s.cn", //Azure 中国镜像 "https://hub-mirror.c.163.com" //网易云

] } EOF

sudo systemctl daemon-reload

sudo systemctl restart docker


Docker 环境搭建 PHP、Nginx、Mysql

配置加速器


四、安装Nginx + PHP

1、拉取镜像

docker pull webdevops/php-nginx:7.3

2、启动镜像

docker run -d --name nginxphp --publish 80:80 --publish 443:443 --restart always -v /data/docker/nginx/nginx.conf:/etc/nginx/nginx.conf -v /data/docker/nginx/cache:/data/nginxcache -v /data/docker/nginx/ssl:/etc/nginx/ssl -v /data/docker/nginx/logs:/data/logs -v /data/docker/nginx/conf.d:/etc/nginx/conf.d -v /data/docker/codes:/data/webroot webdevops/php-nginx:7.3

3、创建文件夹

mkdir -pv /data/webroot #网站根目录

mkdir -pv /data/docker/nginx/conf.d/ #nginx配置文件

mkdir -pv /data/docker/docker/mysql #数据库文件夹

4、配置Nginx

(1)查看PHP的ip

docker inspect nginxphp --format='{{.NetworkSettings.IPAddress}}'

(2)配置nginx.conf

配置nginx代理

vim /data/docker/nginx/conf.d/default.conf

server {

listen 80 default_server;

server_name _;

root /usr/share/nginx/html;

location / {

index index.html index.htm index.php;

autoindex off;

}

location ~ \.php(.*)$ {

root /var/www/html/;

fastcgi_pass 172.17.0.4:9000; #php容器的IP地址

fastcgi_index index.php;

fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

fastcgi_param PATH_INFO $fastcgi_path_info;

fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;

include fastcgi_params;

}

}

五、安装Mysql

1、拉取镜像

docker pull mysql:8

2、启动容器

docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /docker/mysql:/var/lib/mysql --name mysql8 mysql:8

3、进入容器

docker exec -it mysql8 bash

4、登录mysql修改密码

mysql -uroot -p123456

use mysql

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

alter user 'root'@'%' identified by '123456';

FLUSH PRIVILEGES;


5、查看数据库容器IP地址

docker inspect mysql8 --format='{{.NetworkSettings.IPAddress}}'

6、测试宿主服务器是否可以连接

mysql -h 172.17.0.2 -uroot -p123456


分享到:


相關文章: