docker 安装 Gitea

1. 下载镜像

docker pull gitea/gitea:lastest

2. 部署容器

2.1 获取git用户的id, 命令

 ~/ id git
uid=1001(git) gid=1001(git) groups=1001(git)

2.2 准备

切换到git用户,新建gitea的映射文件夹,并启动容器,这样能保证git用户和gitea容器一定能访问到文件夹且具有权限。

docker run --net mynetwork --ip 172.18.0.12 -d --restart always --name gitea  -p 3000:3000 -p 127.0.0.1:2221:22 -v /data/docker/gitea/data:/data -v /data/docker/gitea/timezone:/etc/timezone:ro -v /data/docker/gitea/localtime:/etc/localtime:ro -v /home/git/.ssh/:/data/git/.ssh -e USER_UID=1001 -e USER_GID=1001 --privileged=true gitea/gitea:latest

3. Nginx配置

server {
    listen 80;
    server_name xxx.com;

    access_log /var/log/nginx/gitea_access.log;
    error_log /var/log/nginx/gitea_error.log;

    location / {
        proxy_pass http://172.18.0.12:3000$request_uri;  # 转发到内部端口
        proxy_set_header Host $host;  # 设置请求头中的 Host
        proxy_set_header X-Real-IP $remote_addr;  # 设置客户端真实 IP
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  # 传递原始 IP
        proxy_set_header X-Forwarded-Proto $scheme;  # 传递协议类型
    }

   location ~ /\.ht {
        deny  all;
    }
}

4. 修改仓库地址

https转http

修改文件gitea/data/gitea/conf/app.ini

ROOT_URL         = http://xxx.com/

git仓库地址转换

因为是通过docker安装,所以仓库地址显示的docker内的地址,外部访问路径会有错误

服务器切换git用户,然后在该用户下通过ln -s 软链接到仓库的物理地址,这样能够使对git用户来讲,地址是正确的

0 评论
最新
最旧 最多投票
内联反馈
查看所有评论
滚动至顶部