亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 操作系統 > 正文

Windows Docker 安裝 Gitlab Volume權限問題解決方案

2020-02-03 22:08:50
字體:
來源:轉載
供稿:網友

記錄一下 Windows10 下 Docker 安裝 Gitlab 的步驟。

Caution: We do not officially support running on Docker for Windows. There are known issues with volume permissions, and potentially other unknown issues. If you are trying to run on Docker for Windows, please see our getting help page for links to community resources (IRC, forum, etc) to seek help from other users.

首先,Gitlab 官方是不支持 Windows 下部署 Gitlab 鏡像的,所以正常的 Gitlab 服務還是部署在 Linux 上比較好。本地部署只是用于個人開發測試環境。

問題描述

其實搭建 Gitlab 本省是一件很簡單的事情,直接 pull 官方的 Gitlab 鏡像開起來就可以用了。

docker run --detach / --hostname gitlab.example.com / --publish 443:443 --publish 80:80 --publish 22:22 / --name gitlab / --restart always / --volume /srv/gitlab/config:/etc/gitlab / --volume /srv/gitlab/logs:/var/log/gitlab / --volume /srv/gitlab/data:/var/opt/gitlab / gitlab/gitlab-ce:latest

在 Windows 下我們把 volume 配置成本地路徑運行后會出現一下錯誤:

Error executing action create on resource 'storage_directory[/var/opt/gitlab/git-data]

通過查找,這應該是權限不足,導致 Windows 下的 volume 映射存在一些問題。

解決方法

別人探索出目前可用的方法是采用 volume 數據卷掛載的形式。

首先先安裝 Docker for Windows。并在 Setting 中設置 Shared Drives,設置一會用于掛載 docker 鏡像的 volume 的磁盤。

然后初始化配置文件路徑和 volume。

mkdir D:/docker/gitlab/configmkdir D:/docker/gitlab/backupsdocker volume create gitlab-logsdocker volume create gitlab-data

然后直接創建一個 Container 運行就可以了。

docker run --detach ` --name gitlab ` --restart always ` --hostname localhost ` --publish 10443:443 --publish 10080:80 --publish 1022:22 ` --volume D:/docker/gitlab/config:/etc/gitlab ` --volume gitlab-logs:/var/log/gitlab ` --volume gitlab-data:/var/opt/gitlab ` gitlab/gitlab-ce

等待一段時間初始化后,就可以訪問本地的 10080 端口了,http://localhost:10080

打開后就是正常 Gitlab 的頁面,重置一下 root 的密碼就可以正常使用了。

使用 Docker-Compose 部署(推薦)

如果在運行 Docker 容器時需要配置很多的參數,顯然一遍遍輸入 docker run 會比較麻煩,這里可以采用三劍客當中的 Docker-Compose 來進行容器的管理和創建(安裝 docker-ce 時默認安裝)。暫時不管 Docker-Compose 的其他用法,其實就是把命令運行改成了文件運行而已。

Docker-Compose 是通過文件來創建 Docker Container 的。我們需要在一個目錄下創建 docker-compose.yml 文件,寫入相應的配置文件?,F在我們把上面的命令進行改造:

# Compose file 版本號,和 docker 版本號對應。3 支持 docker 1.13.0+version: "3"# services 節點下包含多個待創建的 Docker Containerservices: # web 節點就是待啟動的 gitlab 容器 web: image: gitlab/gitlab-ce:latest container_name: "gitlab" restart: always hostname: localhost:10080 environment:  TZ: "Asia/Shanghai"  GITLAB_OMNIBUS_CONFIG: |  gitlab_rails["time_zone"] = "Asia/Shanghai"  gitlab_rails["gitlab_shell_ssh_port"] = 10022  nginx["listen_port"] = 80 ports:  - "10080:80"  - "10022:22" volumes:  - D:/docker/gitlab/config:/etc/gitlab  - gitlab-logs:/var/log/gitlab  - gitlab-data:/var/opt/gitlabvolumes: gitlab-logs: gitlab-data:

可以看到這個文件的內容幾乎和之前的 docker run 命令是保持一致的,唯一不同的是不需要我們自己創建 volume 了,直接在配置文件中配置后,啟動時會自己為我們創建。

配置完成后,使用 docker-compose 命令運行起來。

# 打開 cmd,進入 docker-compose.yml 的根目錄# 創建容器docker-compose up -d#關閉容器docker-compose stop

What's More

1. Web UI 端口顯示問題

由于 Gitlab 是在 Docker 內運行的,外部需要訪問的話都是需要通過端口映射的,并且一般內部端口不會和映射出來的外部端口相同。所以在用的時候可能會出現一些問題。

例如在我們例子里,22 映射到 10022,80 映射到 10080??梢钥吹皆?Gitlab 默認的 WebUI 中,項目顯示的克隆地址默認是不帶端口號的,如下圖所示:

因此在進行克隆的時候,無論是 http 還是 ssh,都需要在 url 中手動添加新的端口,例如

http://localhost:10080/root/demo.git

修改配置文件后可以直接在 WebUI 中顯示正確的 url。

具體需要修改 gitlab.rb 和容器內部 /var/opt/gitlab/gitlab-rails/etc/gitlab.yml。

首先修改 gitlab.rb

# 取消這條配置文件的注釋,并修改為外部映射的 ssh 端口gitlab_rails['gitlab_shell_ssh_port'] = 1022# 使用 exec 進入容器內部root@gitlab:/# gitlab-ctl reconfigure

再修改 /var/opt/gitlab/gitlab-rails/etc/gitlab.yml

gitlab: ## Web server settings (note: host is the FQDN, do not include http://) host: 127.0.0.1 port: 10080 # 修改此處 https: false# 修改完后執行root@gitlab:/# gitlab-ctl stoproot@gitlab:/# gitlab-ctl start

這里要注意,后面的那個配置文件是由前面那個生成的,修改 gitlab.rb 后 reconfigure,后面那個配置文件就會被重置了,注意一下修改的順序。

顯然這種方法比較麻煩,如果使用 docker-compose 來啟動容器的話,可以直接在 environment 的 GITLAB_OMNIBUS_CONFIG 節點中配置。

2. 鏡像備份問題

由于使用的是 volume,因此 gitlab 內部的數據直接由 docker 管理了。顯然就不太友好。如果有這個需求的可以閱讀參考文獻 2,里面提到了備份的方法。

總結

總之,Windows 對 Docker 的支持不是很友好,除了下一個學習學習,嘗嘗鮮,或者用于安裝一些 Windows 下無法安裝的軟件,例如 Redis 等外,并不建議使用,顯然選擇 linux 系統一個是更明智的選擇。

Reference

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产香蕉精品视频一区二区三区| 亚洲一区二区三区成人在线视频精品| 欧美在线亚洲在线| 亚洲电影免费观看| 国产精品国产三级国产aⅴ9色| 国产成人福利网站| 久久综合久久88| 国产精品高清在线| 国产a级全部精品| 日韩精品久久久久久久玫瑰园| 69精品小视频| 亚洲直播在线一区| 成人久久一区二区三区| 成人黄色网免费| 青青精品视频播放| 亚洲天堂男人的天堂| 国产精品自在线| 4438全国亚洲精品在线观看视频| 日韩欧美视频一区二区三区| 精品久久久在线观看| 国内精品久久久久| 亚洲3p在线观看| 欧美国产亚洲精品久久久8v| 韩国精品久久久999| 欧美成人精品影院| 久久99久久99精品免观看粉嫩| www日韩中文字幕在线看| 国产91精品不卡视频| 日韩在线观看免费| 91av中文字幕| 欧美激情精品久久久久久大尺度| 日韩av一区二区在线观看| 日本精品久久久| 亚洲欧美激情在线视频| 国产精品444| 亚洲精品欧美一区二区三区| 成人久久18免费网站图片| 亚洲高清福利视频| 色播久久人人爽人人爽人人片视av| 日韩av网站在线| 欧美性受xxx| 久久这里有精品| 中文字幕在线观看日韩| 国产精品久久久亚洲| 国产一区二区美女视频| 91国产精品视频在线| 久久久久久噜噜噜久久久精品| 日韩精品在线观看网站| 亚洲精品suv精品一区二区| 97热在线精品视频在线观看| 国产一区二区三区在线| 欧美日本国产在线| 国产精品极品美女在线观看免费| 2019日本中文字幕| 九九久久精品一区| 国产亚洲人成网站在线观看| 亚洲第一精品久久忘忧草社区| 91老司机在线| 狠狠色狠狠色综合日日五| 欧美在线视频在线播放完整版免费观看| 日韩av电影中文字幕| 欧美电影免费观看电视剧大全| 日日噜噜噜夜夜爽亚洲精品| 国内伊人久久久久久网站视频| 在线播放日韩专区| 国产欧美婷婷中文| 深夜成人在线观看| 日本久久精品视频| 国产精品免费视频xxxx| 亚洲人精选亚洲人成在线| 精品视频www| 91亚洲国产成人精品性色| 久久99久久99精品中文字幕| 久久国产精品久久久久久久久久| 亚州成人av在线| 91精品国产高清自在线看超| 欧美激情2020午夜免费观看| 欧美成人国产va精品日本一级| 欧美性猛交99久久久久99按摩| 91成人国产在线观看| 亚洲在线观看视频| 日韩高清免费观看| 欧美视频中文在线看| 国产精品99久久久久久人| 久久这里只有精品视频首页| 97香蕉久久超级碰碰高清版| 国产v综合ⅴ日韩v欧美大片| 92看片淫黄大片欧美看国产片| 欧美日韩ab片| 国产视频精品久久久| 亚洲激情视频网站| 狠狠色香婷婷久久亚洲精品| 欧美激情伊人电影| 欧美精品在线免费| 日本道色综合久久影院| 欧美日韩中文字幕综合视频| 精品免费在线观看| 成人激情电影一区二区| 久久久久久999| 国产精品亚洲激情| 国产丝袜一区二区| 欧美日韩成人在线播放| 伊人久久久久久久久久久久久| 第一福利永久视频精品| 国产精品mp4| 国产不卡av在线免费观看| 国自在线精品视频| 91精品国产网站| 亚洲精选在线观看| 久久精品国产一区二区三区| 黄色成人在线播放| 国产不卡av在线| 日韩亚洲成人av在线| 亚洲国产日韩精品在线| 久久亚洲欧美日韩精品专区| 中文字幕亚洲一区二区三区| 精品无码久久久久久国产| 亚洲国产精品人久久电影| 亚洲一区二区三区视频播放| 亚洲一区二区三区视频| 国产精品色午夜在线观看| 亚洲成人久久一区| 亚洲女人被黑人巨大进入| 在线电影av不卡网址| 国产欧美一区二区三区四区| 久久精视频免费在线久久完整在线看| 欧美日韩亚洲系列| 国产视频精品一区二区三区| 7777精品久久久久久| 欧美激情国内偷拍| 欧美高清无遮挡| 国产一区二区三区视频在线观看| 欧美性受xxxx白人性爽| 伦伦影院午夜日韩欧美限制| 日韩精品丝袜在线| 欲色天天网综合久久| 亚洲自拍高清视频网站| 日韩精品免费视频| 国产成人精品免高潮在线观看| 国内精品久久久久久久| 国产精品久久久久99| 国产精品色婷婷视频| 久久精品人人爽| 日韩中文字幕免费| 国产成人久久精品| 国产成人黄色av| 18性欧美xxxⅹ性满足| 日韩av中文字幕在线| 亚洲一级黄色av| 久久在线视频在线| 国产剧情久久久久久| 91黑丝高跟在线| 欧美裸体xxxx极品少妇| 一区二区三区视频免费在线观看| xvideos国产精品| 成人做爰www免费看视频网站| 亚洲v日韩v综合v精品v| 81精品国产乱码久久久久久| 中文字幕综合一区| 国产精品www| 久久久www成人免费精品| 亚洲社区在线观看| 国产精品专区第二| 亚洲第一精品久久忘忧草社区|