Laradock安装、.env配置、nginx配置

Ubuntu18.04

1、安装docker

参考安装的几种方式: Link

sudo apt install docker.io    // 安装
service docker start / systemctl start docker        //启动
systemctl enable docker       //开机自启动(可选)
docker -v  / docker version //查看版本

2、安装docker-composer

参考官方安装:Link

非root身份
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
 
sudo chmod +x /usr/local/bin/docker-compose
 
docker-compose --version / docker-composer -v

3、拉取Laradock

参考laravel学院:Link

cd /var/www/

git clone https://github.com/Laradock/laradock.git //将 Laradock 项目代码克隆到本地
 
cd laradock 
 
cp env-example .env
 
docker-compose up -d nginx mysql redis beanstalkd  //运行容器

如果指定端口已经被占用,运行上述命令会报错,关闭相应的服务再重新运行上述命令即可。

另外,运行容器需要FQ,并且第一次需要下载镜像,可能等待时间较长 。

4、配置Laradock

4.1 打开项目的 .env 环境配置文件并添加如下配置:

DB_HOST=mysql
REDIS_HOST=redis
QUEUE_HOST=beanstalkd
APPLICATION=../wwwroot/      
or
APPLICATION=../
//表示Laradock容器里的 /var/www/ 目录对应的是虚拟机的/var/www/wwwroot/ 目录,当然你也可以配置为../  ,这样你的多个项目就和laradock目录同级,具体项目配置参见:https://laradock.io/

MYSQL_VERSION=5.7   //默认latest 也就是5.8版本,最新版本navicate连接时会报加密引擎改变而导致的错误,建议不用5.8

 

5、nginx配置、域名配置

nginx

laradock/nginx/sites/ : 是nginx项目配置文件

如果是laravel项目: cp laravel.conf.example blog.conf
或者thinkphp项目: cp default.conf  think.conf
# blog.conf     
    listen 80;
    listen [::]:80;
    server_name blog.com;
    root /var/www/blog/public;

listen [::]:80  ipv6only=on; 里面的ipv6only=on 只能出现在一个conf配置文件里,否则会报错:

nginx: [emerg] duplicate listen options for [::]:80 in /etc/nginx/sites-enabled/example.com

原因:Link

# 所有docker-compose 命令都得在Laradock目录下执行
docker-compose exec nginx nginx -t //测试conf 文件正确性
docker-compose exec nginx nginx -s reload // 加载配置文件【官方文档未说明要执行此加载】
 
docker-compose up -d nginx //重启nginx

 hosts

vim /etc/hosts

#添加
127.0.0.1   blog.com

 

6、常用命令

#进入容器工作区
docker-compose exec workspace bash    //进入docker后默认看似是root,但项目在docker内部是属于laradock用户(默认),截图展示,当然也可以切换其他账户

#添加用户 
adduser test// 如果提示为root账户 添加test账户
su test //切换账户 执行

#创建项目
composer create-project laravel/laravel blog  //创建项目[如果docker容器内报错,就exit出来,在laradock同级下执行或导入项目]

#进入mysql
docker-compose exec mysql bash
mysql -uroot -proot

#查看启动容器
docker-compose ps

#启动停止某容器
docker-compose start/stop  nginx/mysql

 

更多命令参考:Link 

7、部分命令执行截图(顺序)

Laradock安装、.env配置、nginx配置_第1张图片

Laradock安装、.env配置、nginx配置_第2张图片

Laradock安装、.env配置、nginx配置_第3张图片

参考:Link 

你可能感兴趣的:(docker,Laradock,#,laravel)