跳转至

GitLab

gitlab

  • gitlab 重新载入配置

    gitlab-ctl reconfigure
    

  • gitlab 重启服务

    gitlab-ctl restart
    

  • gitlab 服务状态

    gitlab-ctl status
    

gitlab runner

[[runners]]
  name = "python-pro"
  url = "https://git.celery.icu"
  clone_url = "https://git.celery.icu"
  executor = "docker"
  [runners.cache]
    MaxUploadedArchiveSize = 0
    [runners.cache.s3]
    [runners.cache.gcs]
    [runners.cache.azure]
  [runners.docker]
    tls_verify = false
    image = "ubuntu:latest"
    privileged = false
    disable_entrypoint_overwrite = false
    oom_kill_disable = false
    disable_cache = false
    volumes = [
        "/cache",
        "/var/run/docker.sock:/var/run/docker.sock"
    ]
    shm_size = 0
    network_mtu = 0
    dns = ["8.8.8.8", "114.114.114.114"]

CI

variables:
  DOCKER_BUILDKIT: 1
  DOCKER_HOST: unix:///var/run/docker.sock
  BUILDKIT_INLINE_CACHE: "1"

stages:
  - build

cache:
  key: ${CI_COMMIT_REF_SLUG}
  paths:
    - .cache/buildkit/
  policy: pull-push
  when: on_success

build-image:
  stage: build
  image: docker:latest
  before_script:
    - mkdir -p .cache/buildkit
  script:
    - echo "$ALIYUN_REGISTRY_PASSWORD" | docker login -u "$ALIYUN_REGISTRY_USER" --password-stdin $ALIYUN_REGISTRY >/dev/null 2>&1
    - >
      docker buildx build
      --tag $ALIYUN_REGISTRY/$ALIYUN_NAMESPACE/$IMAGE_NAME:$CI_COMMIT_SHORT_SHA
      --tag $ALIYUN_REGISTRY/$ALIYUN_NAMESPACE/$IMAGE_NAME:latest
      --cache-from type=registry,ref=$ALIYUN_REGISTRY/$ALIYUN_NAMESPACE/$IMAGE_NAME:cache
      --cache-to type=inline
      --push .
  after_script:
    - docker logout $ALIYUN_REGISTRY
  only:
    - main
  tags:
    - pro

Dockerfile

FROM docker.xuanyuan.me/squidfunk/mkdocs-material:9.5.17

WORKDIR /docs

COPY ./docs /docs
COPY ./mkdocs.yml /mkdocs.yml

RUN mkdocs build --site-dir /site --config-file /mkdocs.yml

docker compose

# mkdocs
services:
  mkdocs-builder:
    image: crpi-srcctj2ydacdrw8r.cn-hangzhou.personal.cr.aliyuncs.com/nikkinikki/mkdocs-site:latest
    restart: on-failure
    volumes:
      - /var/www/mkdocs/site:/site
    entrypoint: ["mkdocs", "build", "--clean", "--strict"]

# gitlab
services:
  gitlab:
    image: gitlab/gitlab-ce:18.1.0-ce.0
    container_name: gitlab
    restart: always
    hostname: 'git.celery.icu'
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        # Add any other gitlab.rb configuration here, each on its own line
        external_url 'http://git.celery.icu'
        gitlab_rails['gitlab_shell_ssh_port'] = 2222
    ports:
      - '80:80'
      - '443:443'
      - '2222:22'
    volumes:
      - '$GITLAB_HOME/config:/etc/gitlab'
      - '$GITLAB_HOME/logs:/var/log/gitlab'
      - '$GITLAB_HOME/data:/var/opt/gitlab'
    shm_size: '256m'

# gitlab runner
services:
  gitlab-runner:
    image: gitlab/gitlab-runner:v18.1.0
    container_name: gitlab-runner
    restart: always
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./runner-config:/etc/gitlab-runner
    environment:
      - TZ=Asia/Shanghai