话不多说,直接上代码。
一、安装docker
查看docker是否安装过
yum list installed | grep docker
使用yum安装docker
yum install -y docker
启动docker
systemctl start docker
查看docker启动状态
systemctl status docker
二、配置阿里云镜像
配置阿里云的镜像
cat /etc/docker/daemon.json tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://4mdhrl3b.mirror.aliyuncs.com"] } EOF
重新加载配置,并启动docker
systemctl daemon-reload systemctl restart docker
查看镜像有哪些
docker images
查看当前容器有哪些
docker ps -a
进入某容器中终端
docker exec -it 8f393829b62d /bin/bash
三、安装nginx和php的准备工作:
mkdir -p /data/appweb/conf -p /data/appweb/logs -p /data/appweb/www -p /data/appweb/conf/conf.d
添加普通执行用户权限
useradd -M -s /sbin/nologin nginx chown nginx.nginx -R /data/appweb/
四、安装nginx
拉取最新版的ningx
docker pull docker.io/nginx
启动nginx
docker run --name docker-nginx-dev -p 8081:80 -d nginx
将docker中的nginx配置文件,拷贝到映射目录下
docker cp 8f393829b62d:/etc/nginx/nginx.conf /data/appweb/conf/ #注:其中 8f393829b62d 为 容器ID。
启动nginx时关联系统目录到容器目录
docker run -d -p 8082:80 --name docker-nginx-dev2 \ -v /data/appweb/www:/usr/share/nginx/html \ -v /data/appweb/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /data/appweb/logs:/var/log/nginx \ nginx
五、安装php
拉取指定版本的php-fpm
docker pull docker.io/bitnami/php-fpm:7.2
# 启动php-fpm docker run -p 9000:9000 --name docker-php-fpm \<br> -v /data/appweb/www/:/usr/share/nginx/html \<br> -d bitnami/php-fpm:7.2
添加nginx的配置文件, 如:baidu.com.conf
vim /data/appweb/conf/conf.d/baidu.com.conf 内容如:
server { listen 80; server_name localhost; location / { root /usr/share/nginx/html; index index.html index.htm index.php; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ \.php$ { fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/$fastcgi_script_name; include fastcgi_params; } } #其中:php:9000: 表示 php-fpm 服务的 URL,下面我们会具体说明。
# 启动Nginx,包括配置文件映射到php上 docker run -d --name docker-nginx-php-dev -p 8083:80 \ -v /data/appweb/www:/usr/share/nginx/html:ro \ -v /data/appweb/conf/conf.d:/etc/nginx/conf.d:ro \ -v /data/appweb/logs:/var/log/nginx \ --link docker-php-fpm:php \ nginx