问题描述
我正在尝试将文件从存储库根目录上的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文件复制到其中。
在/ nginx中是一个Dockerfile:
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 (将#修改为@)