映射5432端口- '5431:5432'
或者从docker客户端查看
version: '3.6'
services:web:image: 'gitlab/gitlab-ce:latest'restart: alwayshostname: 'localhost'environment:GITLAB_OMNIBUS_CONFIG: |external_url 'http://localhost:8929'gitlab_rails['gitlab_shell_ssh_port'] = 2224ports:- '8929:8929'- '2224:22'- '5431:5432'volumes:- '/Users/yanlp/workspace/docker/gitlab_latest/config:/etc/gitlab'- '/Users/yanlp/workspace/docker/gitlab_latest/logs:/var/log/gitlab'- '/Users/yanlp/workspace/docker/gitlab_latest/data:/var/opt/gitlab'shm_size: '256m'
登陆容器修改postgresql配置docker exec -it 28e24039b4b6 /bin/bash
-
配置pg开启外部端口监听
$ vi /var/opt/gitlab/postgresql/data/postgresql.conf;#listen_addresses = '' 修改为 listen_addresses = '*' # what IP address(es) to listen on;
-
配置pg白名单
$ vi /var/opt/gitlab/postgresql/data/pg_hba.conf# TYPE DATABASE USER CIDR-ADDRESS METHOD# 最后一行追加 # "local" is for Unix domain socket connections only local all all peer map=gitlab host all all 0.0.0.0/0 trust # 全部允许 最大权限配置
-
重启pg并查看5432端口
$ gitlab-ctl restart postgresql $ netstat -an | grep 5432
-
查看pg绑定用户名
more /etc/passwd
-
查看gitlab database配置
more /opt/gitlab/embedded/service/gitlab-rails/config/database.yml
或者more /var/opt/gitlab/gitlab-rails/etc/database.yml
-
创建新用户并授权(可忽略)
$ su - gitlab-psql $ psql -h /var/opt/gitlab/postgresql -d gitlabhq_production CREATE USER gitlab_psql WITH PASSWORD 'test-admin'; GRANT ALL PRIVILEGES ON DATABASE gitlabhq_production to gitlab_psql; GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO gitlab_psql;