已经困惑很久了:
我用 docker 装了个 gitlab, 通过 nginx 反代来访问(并通过 let's encrypt 拿到证书),总是在刚安装开始几个小时可以正常使用, 但是几个小时后登陆总是提示 422,把 gitlab.com 基本抄了个遍, 初步判断是: 是 /assets/webpack 文件夹下的内容加载不了, 这个是由于 rails 里面的 CSP 安全策略, 不加载 js, 不过我们可以通过配置 nginx, 让 /assets 为静态站点目录, 即在 nginx 配置文件中加上:
location /assets {
root /opt/gitlab/embedded/service/gitlab-rails/public;
index index.html;
}
但是在 ngixn(非 gitlab 的 nginx 增加了上述配置后,仍然无效, reconfigure 之类命令肯定运行了,所以不要问这个了.
请问还有哪里会有问题?
1
GuryYu 2019-02-09 19:59:09 +08:00
虽然不太清楚楼主这个错误的具体原因, 但是可以分享一下我搭建 docker GitLab 的方法.
hostname xx.xx.xx 需要替换为楼主的域名, 容器启动好之后(用 docker logs 看日志), 使用 nginx https 反代访问.(不经过反代 直接访问似乎会报错) ``` CONTAINER="tools-git-gitlab" && \ mkdir -p ~/docker/"$CONTAINER"/config && \ mkdir -p ~/docker/"$CONTAINER"/logs && \ mkdir -p ~/docker/"$CONTAINER"/data && \ docker run \ --name "$CONTAINER" \ --hostname xx.xx.xx \ -idt -p 2222:2222 -p 80:80 -p 443:443 \ --env GITLAB_OMNIBUS_CONFIG="external_url 'https://xx.xx.xx/'; gitlab_rails['gitlab_shell_ssh_port'] = 2222; letsencrypt['enable'] = false; nginx['listen_port'] = 80; nginx['listen_https'] = false; nginx['proxy_set_headers'] = { 'X-Forwarded-Proto' => 'https', 'X-Forwarded-Ssl' => 'on' };" \ -e TZ=Asia/Shanghai \ -v ~/docker/"$CONTAINER"/config:/etc/gitlab \ -v ~/docker/"$CONTAINER"/logs:/var/log/gitlab \ -v ~/docker/"$CONTAINER"/data:/var/opt/gitlab \ --log-opt max-size=100m \ --log-opt max-file=1 \ --restart always \ gitlab/gitlab-ce:11.7.5-ce.0 ``` |
2
mayx 2019-02-09 22:04:05 +08:00 via Android
看成了 422 个怪问题
|
3
sobigfish 2019-02-10 16:36:21 +08:00
@mayx #2 一般人看到 4XX 5XX 都会当成 http error code 而不是其他什么,虽然 422 不常见
|
4
sobigfish 2019-02-10 16:45:41 +08:00
抱歉,是 HTTP status* code
|
5
selinaspy 2019-02-11 00:06:54 +08:00 via iPhone
我私人和公司里都是 docker 版,用很久了都没出现过你这个问题,用官方推荐的修复权限的命令试试?
|
6
honglongmen OP @selinaspy 都试过了, 才会来这里发帖寻求帮助啊. 你是用 nginx 反代的吗?
|
7
drackzy 2019-02-11 05:13:54 +08:00
你是苹果系统?
|
8
ice000 2019-02-11 08:28:55 +08:00
root 管理员项目权限分配用户,应该可以解决这个问题
|
9
selinaspy 2019-02-11 11:16:49 +08:00 via iPhone
@honglongmen 是的呀,都是照官方文档做的
|
10
honglongmen OP @ice000 和这个没关系, 可能是阿里云 cdn 有问题.
|
11
honglongmen OP @selinaspy 可否把你的官方文档发给我看看?
|
12
honglongmen OP @selinaspy 我是修改 root 为另外个用户名出现这个问题, 估计问题出现在这里
|
13
selinaspy 2019-02-12 11:30:18 +08:00
@honglongmen 我也改了 root 的名字,没问题啊,然后官方文档是这个 https://docs.gitlab.com/omnibus/docker/
|
14
honglongmen OP |
15
selinaspy 2019-02-12 18:54:33 +08:00 via iPhone
@honglongmen 日志开 debug 看看吧,这瞎摸也不好弄
|
16
honglongmen OP @selinaspy 现在新问题,我怀疑登录那里 homepage 写错了,导致无法打开, 但是没找到在哪里修改
|