Gogs的Docker容器化部署流程遇到的問題

Gogs的Docker容器化部署流程遇到的問題

 

  最近在學習CI/CD的一些方案,我的比較青睞容器化輕量級。CI方面一開始是想使用gitlab的,可是發現我本身買的服務器配置過低,內存根本不夠(大寫的尷尬)。因此採用更輕量級的Gogs,我真的很懶,只有在遇到挫折了纔會想着把它記下來,平時不少時候都是沒有作筆記的習慣的(吱吱)。此次之因此寫這篇筆記,是由於部署Gogs過程遇到了幾個小坑,浪費了我很多時間,因此但願能幫助到你們,不要走這樣的坑~~言歸正傳mysql

 

環境搭建過程git

1. 安裝部署gogs很簡單,網上一大堆帖子,這裏再也不贅述,簡單發下我啓動gogs的命令吧:sql

 1 # !/bin/bash
 2 
 3 docker run -d \ 4 -p 10080:3000 \ 5 -p 10022:22 \ 6 --net backend \ 7 --name gogs \ 8 -v /data/docker/container/gogs/data:/data/gogs/data \ 9 -v /data/docker/container/gogs/conf:/data/gogs/conf \ 10 -v /data/docker/container/gogs/log:/data/gogs/log \ 11 gogs/gogs

簡單說明下,端口映射我跟網上大部分帖子同樣,都是映射到10080和10022端口,和mysql的鏈接方式仍是使用docker的自定義網卡backend,其餘的數據卷本身根據須要映射下唄docker

 

2. 啓動gogs後接下來就是訪問ip+10080端口,首次訪問會跳到配置頁面緩存

 

 

 圖片是我從網上覆制過來的,我使用的mysql是5.6版,因此mysql容器名我叫mysql56安全

 

3. 好了,正常狀況下是能夠了,接下來是我遇到的坑bash

  1. HTTP端口號這裏的配置,我當時配置成10080,因此致使了每次容器重啓就會訪問不了,其實這裏填的是docker內部的端口號3000!服務器

  2. window7用戶,git在使用過程當中,使用ssh方式拉取代碼,按照網上教程是將本地.ssh目錄的id_rsa.pub文件內容複製到gogs後臺的安全密鑰中,可是仍是提示沒有權限,後面發現咱們須要啓動ssh代理並將密鑰添加到代理緩存中才能夠:ssh

  

eval `ssh-agent -s`   //window用戶才須要加eval
eval `ssh-add ~/id_rsa`

  而後就能夠了,後續若是還有什麼問題我再補充吧,我就遇到這兩個問題gitlab

相關文章
相關標籤/搜索