linux下,docker-compose 安装nignx,php,mysql,redis,rabbitmq,mongo

25 篇文章 1 订阅
14 篇文章 0 订阅

一.准备工作:

1.环境:Ubuntu20.04

#查询linux内核版本等信息 
#版本号:主版本.次版本.释出版本-修改版本
root@zph-IdeaCentre-GeekPro-14IOB:/home/git#  cat /proc/version
Linux version 5.14.0-1033-oem (buildd@lcy02-amd64-025) (gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #36-Ubuntu SMP Mon Apr 4 15:15:49 UTC 2022

#或者

root@zph-IdeaCentre-GeekPro-14IOB:/home/git# uname -a 
Linux zph-IdeaCentre-GeekPro-14IOB 5.14.0-1033-oem #36-Ubuntu SMP Mon Apr 4 15:15:49 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

#或者
root@zph-IdeaCentre-GeekPro-14IOB:/home/git# cat /etc/issue 
Ubuntu 20.04.4 LTS \n \l

2.安装docker,docker-compose环境

linux环境,centos8下 docker及docker compose安装教程

二.docker-compose 安装nignx,php,mysql,redis,rabbitmq,mongo

1.下载docker_lnmp(提取码: ib7s)到自己的linux服务器上,这里我是放到/home/git下的,如图:

2.进入docker_lnmp目录,如图:

3. 安装

#使用以下命令运行
docker-compose up -d --build

需要等待一段时间,出现以下时,表示安装完成

 4.配置环境

#hosts配置 解析开发域名
vi /etc/hosts

#增加域名
127.0.0.1 www.test.com

#保存并退出
:wq

5.配置虚拟站点

#进入docker_lnmp
cd /home/git/docker_lnmp

#复制www.conf
cp www.conf ..
cd ..

#编辑www.conf
vi www.conf

按内容实例配置相关站点,每一个站点都如下格式:

server {
    listen   80;
    server_name  blog.xidu.xyz;
    index index.htm index.html index.php;

    location / {
          root   /var/www/frontend/web;
          index  index.php index.html index.htm;
          if (!-e $request_filename){
              rewrite ^/(.*) /index.php last;
          }
    }    

    location ~ \.php$ {
        root /var/www/frontend/web;
        fastcgi_pass php:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    } 
}

server {
    listen   80;
    server_name  admin.blog.xidu.xyz;
    index index.htm index.html index.php;

    location / {
          root   /var/www/backend/web;
          index  index.php index.html index.htm;
          if (!-e $request_filename){
              rewrite ^/(.*) /index.php last;
          }
    }    

    location ~ \.php$ {
        root /var/www/backend/web;
        fastcgi_pass php:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    } 
}

6.编辑.env

#编辑完成之后,再进入cd /home/git/docker_lnmp/ 编辑.env
cd /home/git/docker_lnmp/ 
vi .env

#更改以下两项:
PROJECT_ROOT=/var/www  #项目路径
VHOST_ROOT=/home/git    #开发环境虚拟站点路径

#保存退出
:wq

#增加log
mkdir –p /mnt/hgfs/work/log/nginx
mkdir –p /mnt/hgfs/work/log/php-fpm

#运行:docker-compose up -d
docker-compose up -d

7.访问

上述配置好后,就可以通过虚拟站点访问对应项目网站了

8.一般我们的项目中的扩展都是经过compoer安装的,所以我们还要在php环境中安装composer,方便以后项目更新扩展

#进入docker php环境
docker exec -it dockerlnmp_php_1 bash

#查看composer是否存在
composer -V

#如果不存在,下载composer安装程序
curl -s https://getcomposer.org/installer | php

#把 composer.phar 文件移到 /usr/local/bin 目录下
mv composer.phar /usr/local/bin/composer

#移动文件后,让它执行
chmod +x /usr/local/bin/composer

#安装已经完成,查看
composer -V

三.重启电脑后,如何重启?

#进入docker_lnmp目录
cd /home/git/docker_lnmp 
#执行
docker-compose start
#ok

四.项目初始化

#进 php 环境,对项目进行初始化(我的项目框架yii2)
docker exec -it docker_lnmp_php_1 bash
cd /var/www/
cd 项目根目录
php ./init

五.安装mongodb后,怎么访问数据库?

通过以上安装后,就可以访问mongodb数据库了,在这里我使用的是Studio 3T

如图:

当然,也可以通过上面的mongo-express可视化工具访问,访问地址:192.168.xxx.xxx:28017,如图:

在请求数据库时,可能报错:MongoDB\Driver\Exception\AuthenticationException: Authentication failed,解决办法:mongodb:MongoDB\Driver\Exception\AuthenticationException: Authentication failed

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值