docker部署gitea (docker-compose篇)

gitea搭建教程

gitea和gitlab对比
Gitea 功能比较简单,需求如果只是单纯存存代码,只做 CI/CD 是足够的,很多附加功能处于缺失状态,需要大量依赖第三方工具。
Gitlab 需要的机器最低配置比较高,对应的,功能也多了很多,如果需要代码 Review 、重度使用 issue 功能、使用 Gitlab 管理项目就比较合适。

因为此次主要是做CI/CD,所以简单写一篇关于docker-compose搭建gitea的教程

一、docker-compose安装

1、下载
# github下载
sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
# daocloud下载(推荐)
sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.24.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

2、添加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
3、查看版本
docker-compose --version

二、启动giteamysql容器

1、创建docker-compose.yaml
version: "3"
# 创建mysql和gitea专用网络
networks:
  gitea:
    external: false
services:
  server:
  	# 指定gitea镜像及版本
    image: gitea/gitea:latest
    # 指定容器别名
    container_name: gitea
    # 配置容器环境
    environment:
      - USER_UID=1000
      - USER_GID=1000
      - DB_TYPE=mysql
      - DB_HOST=db:3306
      - DB_NAME=gitea
      - DB_USER=gitea
      - DB_PASSWD=gitea
    # 开机自启
    restart: always
    # 指定容器使用的网络
    networks:
      - gitea
    # 配置挂载卷
    volumes:
      - ./data:/data
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    # 配置端口映射
    ports:
      - "3000:3000"
      - "22:22"
    # 指定依赖(先安装依赖)
    depends_on:
      - db
  db:
    image: mysql:8.0
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=gitea
      - MYSQL_USER=gitea
      - MYSQL_PASSWORD=gitea
      - MYSQL_DATABASE=gitea
    networks:
      - gitea
    volumes:
      - ./mysql:/var/lib/mysql
2、启动、重启、停止容器
# 启动
docker-compose up -d
# 重启
docker-compose restart
# 关闭(仅停止容器,保留容器卷)
docker-compose down
3、相关问题
#ERROR: for gitea  Cannot start service server: driver failed programming external connectivity on endpoint gitea (325053aaf3abbd8df776e549c544799383ec6590149cffadbb301c9ed9f1a7be): Error starting userland proxy: listen tcp4 0.0.0.0:22: bind: address already in use
#ERROR: Encountered errors while bringing up the project
# 原因是22端口占用
$ vi docker-compose.yaml
# 修改 22 -> 222
    ports:
      - "3000:3000"
      - "222:222"
# 同步修改gitea配置文件
vi data/gitea/conf/app.ini
	SSH_PORT         = 222
	SSH_LISTEN_PORT  = 222
$ docker-compose restart

三、配置 gitea

1、访问gitea
http://your-server-ip:3000

在这里插入图片描述

2、修改配置
# 将ip地址替换为服务器访问地址
SSH Server Domain: `your-server-ip`
Gitea Base URL:` http://your-server-ip:3000`
3、添加管理员账户
# 展开Administrator Account Settings
# 新增账户
4、点击 install
5、切换中文界面

​ language -> update profile

在这里插入图片描述

6、创建一个仓库,同github一样的操作

在这里插入图片描述

四、拉取项目

1、安装git
yum install -y git
2、克隆项目
git clone http://192.168.3.91:3000/gitea/simple-java-maven-app.git 
3、如何使用ssh地址克隆
# 创建git用户
useradd git 
passwd git
  New password: *****
  Retype new password: *****

# 切换用户
su git
# 生成ssh密钥
ssh-keygen -t rsa -C "git@git.com"
# 连续回车
# 查看密钥文件
cat ~/.ssh/id_rsa.pub

在这里插入图片描述

4、将密钥添加到gitea

在这里插入图片描述

5、ssh方式拉去项目
git clone ssh://git@192.168.3.91:222/gitea/simple-java-maven-app.git
# 此时可以不用输入密码啦

在这里插入图片描述

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LemonCoder呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值