【发布时间】:2019-08-20 10:42:58
【问题描述】:
我需要能够通过 gitlab ci/cd 将私有 gitlab 服务器内的 ssl 文件复制到 docker 映像中。
下面是我的 gitlab runner 的配置。我已经映射了 /root/server-ssl 目录的卷,因此可以通过 ci/cd 读取文件
[runners.docker]
tls_verify = false
image = "docker.myserver.com/gitlab-base-image"
privileged = true
disable_entrypoint_overwrite = false
oom_kill_disable = false
disable_cache = true
volumes = ["/var/run/docker.sock:/var/run/docker.sock",
"/root/.docker/config.json:/root/.docker/config.json",
"/cache",
"/root/server-ssl:/root/server-ssl"]
extra_hosts = ["gitlab.myserver.com:<some_ip>"]
shm_size = 0
以下是我的 dockerfile 配置:
# 1 - Build environment
FROM node:10.16 as react-build
WORKDIR /usr/src/app
COPY package.json yarn.lock ./
RUN yarn
COPY . ./
RUN yarn build
# 2 - Production environment
FROM nginx:alpine
RUN mkdir -p /root/server-ssl
COPY /root/server-ssl/ssl.chained.crt /root/server-ssl/
COPY /root/server-ssl/ssl.key /root/server-ssl/
COPY nginx.staging.conf /etc/nginx/conf.d/default.conf
EXPOSE 80 443
CMD ["nginx", "-g", "daemon off;"]
但是我总是得到 gitlab ci/cd runner 的以下错误:
Step 5/18 : COPY /root/server-ssl/ssl.chained.crt /root/server-ssl/
COPY failed: stat /var/lib/docker/tmp/docker-builder528505413/root/server-ssl/ssl.chained.crt: no such file or directory
谁能帮我复制这些文件?
【问题讨论】:
标签: docker dockerfile gitlab-ci devops gitlab-ci-runner