首页
文章列表
交流群
文档
登录
docker系列课10:把自己的项目代码打包并发布进仓库
2024-10-15 14:03:39
小程序码
文章目录
热门文章
整理下php学员遇到的一些问题
431
fastadmin监听或重写删除编辑按钮事件
285
phpstudy怎么手动安装php8.3.0版本?
275
文档:一个案例学会fastadmin插件开发
148
php基础入门课程资料文档课件
134
表单验证:密码和确认密码的验证和文字提示
76
百题斩:用递归方式扁平化嵌套数组
67
百题斩:字符串的逆序函数
60
案例代码:用油猴脚本统计b站课堂课程总时长
59
使用ffmpeg把mp4转为加密后的m3u8文件
55
> 把上节课部署的fastadmin项目+环境打包,发布到hub.docker.com,让别人也能直接拉取使用 ### 1.编写Dockerfile文件 先准备好之前我们写好的2个conf文件放在opt目录下,这样别人在安装我们的镜像时就不需要再手动配置这2个文件了 ### 10-php.conf ``` location ~ \.php(.*)$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $request_filename; fastcgi_read_timeout 600; fastcgi_param PATH_INFO $1; } ``` ### 10-location-root.conf ``` location / { try_files $uri $uri/ /index.php?$query_string; if (!-e $request_filename) { rewrite ^(.+?\.php)(/.+)$ /$1?s=$2 last; rewrite ^(.*)$ /index.php?s=/$1 last; break; } } ``` ``` # 基于webdevops/php-nginx:7.4镜像 FROM webdevops/php-nginx:7.4 # 设置环境变量 ENV WEB_DOCUMENT_ROOT=/app/public \ PHP_DISPLAY_ERRORS=1 \ PHP_XDEBUG=1 # 将ThinkPHP项目复制到容器内指定位置 COPY ./tp5 /app COPY ./opt/10-location-root.conf /opt/docker/etc/nginx/vhost.common.d/10-location-root.conf COPY ./opt/10-php.conf /opt/docker/etc/nginx/vhost.common.d/10-php.conf RUN chmod -R 777 /app # 设置容器启动时执行的命令 CMD ["supervisord"] ``` ### 2.执行打包 `docker build -t maoshufun/fastadmin-test:1.0 .` 注意:这里的maoshufun换成你自己的docker hub用户名,最后面的 . 别忘记 ### 3.本地执行run 要先在本地安装测试看下是否有问题,没有问题的话再继续执行下一步。 注意:执行的时候必须连接本地测试用的网络,否则无法连接数据库进行安装测试。 ``` docker run -d --name fatestmaoshu -p 7891:80 --network test-net-maoshu maoshufun/fastadmin-test:1.0 ``` ### 4.打包上线 测试没问题后,就开始上线吧 #### 1.登录hub `docker login -u maoshufun` 然后输入密码,回车登录,提示successed,那么就成功了,继续下一步 #### 2.打标记tag 把刚才构建的镜像进行tag标记 `docker tag maoshufun/fastadmin-test:1.0 maoshufun/fastadmin-test:1.0` #### 3.推送 `docker push maoshufun/fastadmin-test:1.0` 成功后等一段时间,执行search命令搜索下,如果能搜到,那别人就可以使用了