介绍
使用docker-compose可以快速的搭建lnmp环境,便于使用。
安装
安装docker-compose
curl -fsSL https://get.docker.com | sudo bash #docker-compose的最新版本,可以查看https://github.com/docker/compose/releases curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
lnmp
这里推荐一个github项目:https://github.com/nanoninja/docker-nginx-php-mysql
最简单的使用方法:
apt-get update apt-get install git -y git clone https://github.com/nanoninja/docker-nginx-php-mysql cd docker-nginx-php-mysql #默认的MySQL为8.0,MySQL的默认账户密码均为root,如需更改,输入vi .env
修改.env文件即可。 #其他的配置(开放端口等)可以修改docker-compose.yml
文件。 docker-compose up -d
自此lnmp已经可以使用了,网站目录位于docker-nginx-php-mysql/web/public
当然也可以自己编写docker-compose.yml
新建一个目录保存docker-compose.yml
version: '3' services: php: hostname: lnmp_php container_name: lnmp_php image: php:fpm networks: - lnmp volumes: - ./wwwroot:/data/www nginx: hostname: nginx container_name: nginx image: nginx:latest ports: - 80:80 - 443:443 depends_on: - php - mysql networks: - lnmp volumes: - ./wwwroot:/data/www - ./nginx/conf.d:/etc/nginx/conf.d mysql: hostname: mysql container_name: mysql image: mysql:5.6 ports: - 3306:3306 networks: - lnmp volumes: - ./mysql/conf/my.cnf:/etc/my.cnf - ./mysql/data:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: 123456 MYSQL_DATABASE: wordpress MYSQL_USER: user MYSQL_PASSWORD: user123 networks: lnmp:
在同目录下新建nginx/conf.d/default.conf
server { listen 80; # server_name localhost; #charset koi8-r; #access_log /var/log/nginx/host.access.log main; #root /usr/share/nginx/html; root /data/www; index index.php index.html index.htm; #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # # error_page 500 502 503 504 /50x.html; # location = /50x.html { # root /usr/share/nginx/html; # } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { # root html; fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} }
然后运行
docker-compose up -d
即可。
同目录下新建wwwroot作为网站目录。