如何向部署到gitlab的jekyll添加dockerfile

如何向部署到gitlab的jekyll添加dockerfile,docker,gitlab,jekyll,gitlab-ci,Docker,Gitlab,Jekyll,Gitlab Ci,我在gitlab上用shared runner托管我的jekyll网站。我想向其中添加dockerfile并缓存构建过程。我找到了一张docker的照片。它说用法是 export JEKYLL_VERSION=3.8 docker run --rm \ --volume="$PWD:/srv/jekyll" \ --volume="$PWD/vendor/bundle:/usr/local/bundle" \ -it jekyll/jekyll:$JEKYLL_VERSION \

我在gitlab上用shared runner托管我的jekyll网站。我想向其中添加dockerfile并缓存构建过程。我找到了一张docker的照片。它说用法是

export JEKYLL_VERSION=3.8
docker run --rm \
  --volume="$PWD:/srv/jekyll" \
  --volume="$PWD/vendor/bundle:/usr/local/bundle" \
  -it jekyll/jekyll:$JEKYLL_VERSION \
  jekyll build
在何处添加此代码。我可以添加到gitlab ci.yml文件中的某个地方吗?

您可以从

它将在Docker容器中运行Jekyll,以编译和预览本地装载到
dist
文件夹中的静态站点

它使用一个
docker compose.yml

version: '2'

services:
  jekyll:
    image: jekyll/jekyll
    volumes:
      - ./src:/srv/jekyll/site
      - ./dist:/srv/jekyll/_site
    ports:
      - "4000:4000"
和一个gitlab-ci.yml:

pages:
  image: alpine:latest
  script:
  - cp -R ./dist ./public
  artifacts:
    paths:
    - public
  only:
  - master
您可以从“”开始

它将在Docker容器中运行Jekyll,以编译和预览本地装载到
dist
文件夹中的静态站点

它使用一个
docker compose.yml

version: '2'

services:
  jekyll:
    image: jekyll/jekyll
    volumes:
      - ./src:/srv/jekyll/site
      - ./dist:/srv/jekyll/_site
    ports:
      - "4000:4000"
和一个gitlab-ci.yml:

pages:
  image: alpine:latest
  script:
  - cp -R ./dist ./public
  artifacts:
    paths:
    - public
  only:
  - master

我在运行docker compose run jekyll jekyll new site时被拒绝了@rb_sysopen-/srv/jekyll/site/.gitignore。运行
docker compose运行jekyll-jekyll-new-site
时,我没有安装virtualBoxI get
权限被拒绝@rb\u sysopen-/srv/jekyll/site/.gitignore
。我没有安装virtualBox