preface

GitLab is an open source project for warehouse management systems. Using Git as a code management tool, and built on the basis of web services.

Public and private projects can be accessed through a Web interface. It has similar functionality to Github, with the ability to browse source code and manage defects and comments. Manages team access to the repository, makes it easy to browse committed versions and provides a file history library. Team members can communicate using a built-in simple chat program (Wall). It also provides a snippet collection feature for easy code reuse.

Set up process

docker-compose-gitlab.yml

web:
  image: 'gitlab/gitlab-ce:latest'
  container_name: gitlab
  restart: always
  hostname: '192.168.124.5:8888'
  environment:
    GITLAB_OMNIBUS_CONFIG: | external_url 'http://192.168.124.5 # Add any other gitlab. Rb configuration here, each on its own line # nginx # nginx['redirect_http_to_https'] = true # nginx['ssl_certificate'] = "/etc/gitlab/ssl/tfss.me.cer" # nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/tfss.me.key" # nginx['real_ip_header'] =  'X-Real-IP' # nginx['real_ip_recursive'] = 'on' # nginx['listen_port'] = 8081 # email setting # gitlab_rails['smtp_enable'] = true # gitlab_rails['smtp_address'] = "smtp.gmail.com" # gitlab_rails['smtp_port'] = 587 #  gitlab_rails['smtp_user_name'] = "[email protected]" # gitlab_rails['smtp_password'] = "my-gmail-password" # gitlab_rails['smtp_domain'] = "smtp.gmail.com" # gitlab_rails['smtp_authentication'] = "login" # gitlab_rails['smtp_enable_starttls_auto'] = true # gitlab_rails['smtp_tls'] = false # gitlab_rails['smtp_openssl_verify_mode'] = 'peer'  ports:
    - '8888:80'
    - '442:443'
    - 'then'
  volumes:
    - '$HOME/app/gitlab/config:/etc/gitlab'
    - '$HOME/app/gitlab/logs:/var/log/gitlab'
    - '$HOME/app/gitlab/data:/var/opt/gitlab'
Copy the code

Start the

docker-compose -f docker-compose-gitlab.yml up -d
Copy the code

access

http://192.168.124.5:8888/
Copy the code

Then set the initial root password.

The last

I take notes on this for the convenience of developing and testing.