docker-compose.ymlの作成
まずは、docker-compose.ymlファイルを作成を作成する
- imageはgitea公式dockerhubの最新1.7を使用する
- SSH_PORTはホストと重複しないよう変更する
- TZ=Japanを指定して時計をあわせる
- restart alwaysでOS再起動しても起動してくるよう設定
docker-compose.yml
version: '3'
services:
web:
image: gitea/gitea:1.7
volumes:
- ./gitea-data:/data
ports:
- "3000:3000"
- "10022:10022"
environment:
- TZ=Japan
- SSH_PORT=10022
restart: always
一度起動
$ docker-compose up
- ブラウザで
192.168.1.100:3000
にアクセス - 右上のサインインをクリック
以下の太字は変更箇所
設定項目 | 設定値 |
---|---|
データベース設定 | XXXXXXXXXXXXXXX |
データベースのタイプ | SQLite |
パス | /data/gitea/gitea.db |
基本設定 | XXXXXXXXXXXXXXX |
サイトタイトル | Gitea: Git with a cup of tea |
リポジトリのルートパス | /data/git/repositories |
Git LFSルートパス | /data/git/lfs |
実行ユーザー名 | git |
SSHサーバーのドメイン | 192.168.1.100 |
SSHサーバーのポート | git |
Gitea HTTPポート | 3000 |
GiteaのベースURL | http://192.168.1.100:3000/ |
ログの保存先パス | /data/gitea/log |
オプション設定 | 管理者アカウントの設定 |
管理者ユーザー名 | root |
パスワード | root |
パスワード確認 | root |
メールアドレス | root@192.168.1.100 |
Giteaをインストールをクリック
SSHの設定
ブラウザで右上の設定>SSH/GPGキー>キーを追加をクリック
$ ssh-keygen -t rsa -b 4096
$ cat ~/.ssh/id_rsa.pub
xxxxxxx
生成された公開鍵id_rsa.pub
の中身を内容に貼り付け、キーを追加をクリック
ここで一度docker-composeを停止
Ctrl+c
START_SSH_SERVER = true
を設定ファイルに追加
# vi gitea-data/gitea/conf/app.ini
START_SSH_SERVER = true
$ docker-compose up
これでSSHでのclone/pushが可能に。
参考
Docker コンテナの自動起動をキャンセルする - OZACC.blog
$ docker inspect {コンテナID} | grep -A 3 RestartPolicy
"RestartPolicy": {
"Name": "always",
"MaximumRetryCount": 0
},
$ docker update --restart=no {コンテナID}
$ docker inspect {コンテナID} | grep -A 3 RestartPolicy
"RestartPolicy": {
"Name": "no",
"MaximumRetryCount": 0
},