====== GitLab 安裝相關紀錄 ====== * 安裝環境 : Alpine 3.20 + docker compose ===== docker compose (非正式 SSL 憑證) ===== * docker-compose.yml services: gitlab: image: gitlab/gitlab-ce container_name: gitlab restart: always hostname: 'git-demo.ichiayi.com' environment: GITLAB_OMNIBUS_CONFIG: | # Add any other gitlab.rb configuration here, each on its own line external_url 'https://git-demo.ichiayi.com' ports: - '80:80' - '443:443' - '22:22' volumes: - './config:/etc/gitlab' - './logs:/var/log/gitlab' - './data:/var/opt/gitlab' shm_size: '256m' * 啟動服務 docker compose up -d docker compose logs -f * 查看自動產生的 root 密碼 cat config/initial_root_password ===== docker compose (含 ACME 自動更新 SSL 憑證) ===== * 目錄配置 . ├── .env ├── cloudflare.ini ├── docker-compose.yml ├── [config] ├── [data] ├── [logs] ├── [ssl] * 建立 ssl 目錄與權限 rm -rf ssl/* mkdir -p ssl chmod 777 ssl * 編輯 docker-compose.yml {{repo>https://raw.githubusercontent.com/tryweb/docker-compose/refs/heads/main/gitlab/docker-compose.yml}} * 編輯 .env 檔案 Exp. {{repo>https://raw.githubusercontent.com/tryweb/docker-compose/refs/heads/main/gitlab/.env.example}} * 編輯 cloudflare.ini 檔案 Exp. {{repo>https://raw.githubusercontent.com/tryweb/docker-compose/refs/heads/main/gitlab/cloudflare.ini.example}} * 設定 .env 與 cloudflare.ini 權限 chmod 600 .env chmod 600 cloudflare.ini * 啟動服務 docker compose up -d ===== 參考網址 ===== * https://docs.gitlab.com/ee/install/docker/index.html * https://docs.gitlab.com/ee/ci/enable_or_disable_ci.html#site-wide-admin-setting * https://gitlab.com/gitlab-org/gitlab/-/issues/25876 * https://docs.gitlab.com/ee/api/settings.html {{tag>gitlab tips}}