Docker方式安装Gitea服务

本文介绍以Docker Compose方式启动Gitea服务,参考使用 Docker 安装
环境准备:需要事先在主机上安装好Docker及Docker Compose,具体可以参考:Docker实践之01-入门介绍Docker进阶之01-Docker Compose编排工具

如下Gitea部署示例中将Gitea相关配置文件保存在了用户~路径。

# cd ~
# mkdir gitea             # gitea安装目录
# cd gitea/
# mkdir data              # 保存gitea配置文件的目录
# mkdir mysql             # MySQL数据目录,gitea使用MySQL保存元数据
# vim docker-compose.yml  # Docker Compose配置文件

文件docker-compose.yml内容如下:

version: "3"

networks:
  gitea:
    external: false

services:
  server:
    image: gitea/gitea:1.21.0
    container_name: gitea
    environment:
      - USER_UID=1000
      - USER_GID=1000
      - GITEA__database__DB_TYPE=mysql
      - GITEA__database__HOST=db:3306
      - GITEA__database__NAME=gitea
      - GITEA__database__USER=gitea
      - GITEA__database__PASSWD=gitea
    restart: always
    networks:
      - gitea
    volumes:
      - ./data:/data # 使用主机卷,挂载docker-compose.yml文件所在目录下的data目录作为gitea的数据目录
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "3000:3000"  # 映射本机的3000端口到Docker容器内的3000端口
      - "222:22"     # 映射本机的222端口到Docker容器内的22端口
    depends_on:
    - db
  
  db:
    image: mysql:8  # 使用MySQL保存gitea元数据
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=gitea
      - MYSQL_USER=gitea
      - MYSQL_PASSWORD=gitea
      - MYSQL_DATABASE=gitea
    networks:
      - gitea
    volumes:
      - ./mysql:/var/lib/mysql # 使用主机卷,挂载docker-compose.yml文件所在目录下的mysql目录作为gitea元数据库的目录

启动Docker容器:

# cd ~/gitea
# docker-compose up # 如果需要后台启动,添加-d参数,即:docker-compose up -d

查看服务是否启动成功:

# docker-compose ps
NAME         IMAGE                COMMAND                                        SERVICE   CREATED        STATUS          PORTS
gitea        gitea/gitea:1.21.0   "/usr/bin/entrypoint /bin/s6-svscan /etc/s6"   server    23 hours ago   Up 45 minutes   0.0.0.0:3000->3000/tcp, :::3000->3000/tcp, 0.0.0.0:222->22/tcp, :::222->22/tcp
gitea-db-1   mysql:8              "docker-entrypoint.sh mysqld"                  db        23 hours ago   Up 45 minutes   3306/tcp, 33060/tcp

访问http://主机IP:3000进行初始化安装,需要添加管理员用户并设置密码。
安装完毕后再次访问http://主机IP:3000,在左上角点击【登录】按钮,输入初始化安装时设置的管理员用户名和密码,即可进入到管理后台。

在右上角点击加号+即可添加组织或仓库,之后便可以使用git客户端访问指定的仓库数据。

如果允许外部应用通过API接口访问Gitea服务中的仓库数据,需要创建Access Token,路径:【设置】-> 【应用】-> 【管理 Access Token】,设置一个令牌名称并选择相应的权限,点击【生成令牌】即可。

注:生成的API访问令牌串只会展示一次,需要复制下来便于使用。

【参考】
Gitea是什么?


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达,在下面评论区告诉我^_^^_^