问题描述
我正在尝试将文件从存储库根目录上的src文件夹复制到Nginx图像内的www文件夹中,以及在构建并发送到我的PHP-fpm文件夹中(如果需要?)注册表。我在提交到仓库时运行此命令时,正在使用gitlab for CI,目前可以正常运行,但是缺少文件复制功能。
回购根目录中的是:
.gitlab-ci.yaml
/PHP-fpm
/Nginx
/src
我的gitlab-ci.yml文件:
image: docker:stable
services:
- docker:18-dind
variables:
DOCKER_HOST: tcp://localhost:2376
PHP:
before_script:
- docker login gitlab.domain.com:5050 -u ${CI_REGISTRY_USER} -p ${CI_REGISTRY_PASSWORD}
script:
- docker build -t gitlab.domain.com:5050/project/site/PHP:7.2-fpm ./PHP-fpm
- docker push gitlab.domain.com:5050/project/site/PHP:7.2-fpm
Nginx:
before_script:
- docker login gitlab.domain.com:5050 -u ${CI_REGISTRY_USER} -p ${CI_REGISTRY_PASSWORD}
script:
- docker build -t gitlab.domain.com:5050/project/site/Nginx:stable ./Nginx
- docker push gitlab.domain.com:5050/project/site/Nginx:stable
当前将图像添加到存储库中,但是我需要将/ src文件复制到其中。
FROM Nginx:1.18.0-alpine
copY conf/default.conf /etc/Nginx/conf.d/default.conf
在/ Nginx / conf中:
server {
listen 80;
index index.PHP index.html;
root /var/www/html/public;
client_max_body_size 32M;
location / {
try_files $uri /index.PHP?$args;
}
location ~ \.PHP$ {
fastcgi_split_path_info ^(.+\.PHP)(/.+)$;
fastcgi_pass unix:/sock/PHP-fpm.sock;
fastcgi_index index.PHP;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
在/PHP-fpm/entrypoint.sh中(我也需要在这里复制/ src文件吗?)
#!/bin/sh
workdir="/var/www/html"
chown -R www-data:www-data $workdir
cd $workdir
PHP artisan cache:clear
PHP artisan route:clear
PHP artisan config:cache
PHP-fpm -F
在/ PHP-fpm / Dockerfile
FROM PHP:7.2-fpm-alpine
RUN docker-PHP-ext-install pdo_MysqL
copY ./entrypoint.sh /usr/local/bin/entrypoint.sh
workdir /var/www/html
CMD ["/usr/local/bin/entrypoint.sh"]
在/PHP-fpm/PHP-fpm.d/PHP-fpm-www.conf
error_log = /proc/self/fd/2
[www]
user = www-data
group = www-data
listen.owner = www-data
listen.group = www-data
listen = /sock/PHP-fpm.sock
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)