同步操作将从 后盾人/docker 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
houdunren.com @ 向军大叔
本项目是高可用的LNMP开发环境,同时支持代理转发,实现单台服务器运行多个DOCKER网站。
本项目为视频代码或直播课程代码,希望大家能给个
star
这是对我们最好的鼓励和肯定。
项目特点
后盾人 已经发布了DOCKER相关视频教程,可以帮助你掌握DOCKER技术。
Github 仓库:https://github.com/houdunwang/docker
Gitee 仓库:https://gitee.com/houdunren/docker
为了在本地测试成功可以先关闭防火墙
在学习阶段可以先关闭防火墙,保证端口不受访问限制,以下是LINUX管理防火墙的基本指令
sudo systemctl stop firewalld.service
练习时也可以永久关闭防火墙
sudo systemctl disable firewalld.service
查看防火墙状态
sudo systemctl status firewalld.service
然后重起 DOCKER
sudo systemctl restart docker
关闭setlinux
修改配置文件
sudo vim /etc/selinux/config
SELINUX
值为disabledSELINUX=disabled
从 GITHUB 或 GITEE 下CLONE项目代码
git clone https://gitee.com/houdunren/docker.git
cd docker
下面是实验的文件结构,便于有个全局认识
.
├── app 应用目录
│ ├── index.php
│ └── phpinfo.php
├── docker-compose.yaml 容器编排
├── mysql MYSQL容器
│ ├── Dockerfile 镜像配置
│ ├── data 数据结构
│ └── log 运行日志
├── nginx
│ ├── Dockerfile
│ ├── config
│ │ └── default.conf NGINX配置
│ └── log 运行日志
│ ├── access.log
│ └── error.log
├── redis
│ ├── Dockerfile
│ ├── config
│ │ └── redis.conf REDIS配置
│ └── log 运行日志
│ ├── access.log
│ └── error.log
└── php
├── Dockerfile
└── config
└── php.ini PHP配置文件
通过修改 .env 可以对容器的参数进行定制,比如数据库帐号密码等
#容器名前缀
CONTAINER_NAME_PRE=houdunren
#宿主机映射到容器的端口
PORT=8080
#宿主机映射到MYSQL容器的端口
MYSQL_PORT=33060
#ROOT管理员密码
MYSQL_ROOT_PASSWORD=admin888
#新建数据库
MYSQL_DATABASE=houdunren
#新建普通用户帐号密码
MYSQL_USER=houdunren
MYSQL_PASSWORD=houdunren
#MYSQL初始后强制ROOT帐号改密码
MYSQL_ONETIME_PASSWORD=no
#允许MYSQL空密码
MYSQL_ALLOW_EMPTY_PASSWORD
系统包括NGINX、PHP等软件的项目配置文件,修改这些配置文件不需要重新编译,只需要在docker-compose.yaml
文件所在目录下重起容器就可以了。
docker-compose restart
执行以下命令将编译镜像并启动容器
docker-compose up -d
查看容器
docker ps
现在可以通过 http://localhost/8080
访问项目了
下面来安装LARAVEL项目,你可以安装任何其它PHP项目来使用,具体可以查看后盾人在线文档或视频学习LARAVEL的安装使用。
cd app
rm *
laravel new .
因为LARAVEL要解析到public目录,修改NGINX配置文件 nginx/config/default.conf
目录相关内容
location / {
...
root /www/public;
...
}
...
location ~ \.php$ {
...
fastcgi_param SCRIPT_FILENAME /www/public$fastcgi_script_name;
...
}
修改配置后需要生起容器服务
docker-compose restart
现在访问就可以看到LARAVEL欢迎页面了
下面我们使用MYSQL管理GUI工具DBeaver连接容器数据库,默认MYSQL端口是33060可以在.env文件中修改。
如果修改了.env 中的配置需要重新编译容器
docker-compose up -d
MYSQL远程连接步骤如下:
进入容器
docker exec -it houdunren-mysql /bin/bash
登录mysql
$ mysql -uroot -p
修改权限
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'admin888';
mysql> flush privileges;
使用DBeaver访问
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。