标签:修改 sha 拉取 需要 stc 安装docker color get config
1、安装docker
2、拉取镜像
docker pull mysql:5.7
docker pull php:7.3-fpm
docker pull nginx
4、创建mysql容器
docker run --name mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d -i -p 3306:3306 mysql:latest
5、设置mysql远程访问
docker exec -it mysql bash
mysql -uroot -p
use mysql;
ALTER USER ‘root‘@‘%‘ IDENTIFIED WITH mysql_native_password BY ‘root‘;
flush privileges;
6、创建网站目录和配置
mkdir -p ~/nginx/www ~/nginx/logs ~/nginx/conf
7、创建PHP容器
docker run --name php -v ~/nginx/www:/www -d php:7.3-fpm
8、创建nginx容器
docker run --name nginx -p 80:80 -v ~/nginx/www:/usr/share/nginx/html -v ~/nginx/conf:/etc/nginx/conf.d --link php:php -d nginx
9、修改配置文件~/nginx/conf/xxx.conf
server {
listen 80;
server_name docker.test.com;
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
break;
}
root /usr/share/nginx/html/web1;
index index.html index.htm index.php;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html/web1;
}
location ~ \.php$ {
fastcgi_pass php:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /www/web1/$fastcgi_script_name;
include fastcgi_params;
}
}
特别说明:
fastcgi_pass php:9000需要与nginx容器的 link一致
/www/web1需要与php映射的路径一致,并且加上当前站点的根目录
docker默认安装的php有些扩展是没有的,需要自己进入容器安装
10、容器中安装php扩展
docker-php-ext-install 扩展名称
docker-php-ext-configure一般需要与docker-php-ext-install配合使用,当需要自定义扩展的时候需要使用
安装php的gd库时需要使用
apt-get update
apt-get install -y libfreetype6-dev libjpeg62-turbo-dev libmcrypt-dev libpng-dev
docker-php-ext-install -j$(nproc) iconv mcrypt
docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/
docker-php-ext-install -j$(nproc) gd
最后重启php和nginx
docker restart php
docker restart nginx
标签:修改 sha 拉取 需要 stc 安装docker color get config
原文地址:https://www.cnblogs.com/fyiyy/p/14871433.html