hyperf2.1框架使用Dockerfile部署流程步骤
我这里用的是hyperf2.1框架自带的Dockerfile构建部署
文件就在项目的根目录了
还是用之前的docker环境
进入宿主机的项目目录
[[email protected] ~]# cd /home/www/obj/
[[email protected] obj]# ll
总用量 464
drwxr-xr-x. 11 root root 162 5月 14 2021 app
drwxr-xr-x. 2 root root 24 2月 22 2021 bin
-rw-r--r-- 1 root root 3051 9月 13 2021 composer.json
-rw-r--r-- 1 root root 440839 9月 13 2021 composer.lock
drwxr-xr-x. 3 root root 79 2月 22 2021 config
-rw-r--r-- 1 root root 580 2月 22 2021 deploy.test.yml
-rw-r--r-- 1 root root 1456 3月 15 14:34 Dockerfile
-rw-r--r-- 1 root root 474 2月 22 2021 phpstan.neon
-rw-r--r-- 1 root root 695 2月 22 2021 phpunit.xml
drwxrwxr-x. 6 root root 55 5月 7 2021 public
-rwxr-xr-x 1 root root 69 6月 16 2019 push.sh
-rw-r--r-- 1 root root 1797 2月 22 2021 README.md
drwxrwxr-x. 6 root root 80 5月 18 2021 runtime
drwxrwxr-x. 4 root root 35 3月 31 2021 storage
drwxr-xr-x. 3 root root 64 2月 22 2021 test
drwxr-xr-x. 53 root root 4096 5月 18 2021 vendor
构建镜像 (根据你的服务器配置及网络 大概在5分钟左右)
[[email protected] obj]# docker build -t hyperfdocker .
...
构建完成 (看生成最上面两个镜像)
[[email protected] obj]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hyperfdocker latest 88e476d2b792 43 hours ago 241MB
hyperf/hyperf 7.4-alpine-v3.11-swoole 701de41e088d 3 weeks ago 123MB
rabbitmq management 80070f1f0c8f 6 months ago 253MB
goblog latest 4b4b017a2545 7 months ago 1.16GB
golang latest 0821480a2b48 7 months ago 862MB
启动镜像 (命令就不介绍了 自行搜索)
[[email protected] obj]# docker run --name hyperf -v /home/www/obj:/data/project -p 9601:9601 -it --privileged -u root --entrypoint /bin/sh hyperfdocker:latest
ps:
-p是根据你项目server.php配置服务端口 默认是9501 我这里改成9601
[[email protected] obj]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ab16395d710b hyperfdocker:latest "/bin/sh" 43 hours ago Up 43 hours 9501/tcp, 0.0.0.0:9601->9601/tcp hyperf
1a0005f6e0db 80070f1f0c8f "docker-entrypoint.s…" 6 months ago Up 2 weeks 4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, 15671/tcp, 15691-15692/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp rabbitmq
启动项目 (上面的命令会直接进容器里面项目根目录/opt/www)
/opt/www # php bin/hyperf.php start
看看效果
最后
线上环境你可以用nginx反向代理
本地环境你可以直接修改hosts文件解析
相关文章