Thiết lập Gog trên VPS Debian 9 hoặc Ubuntu 16.04

Thiết lập Gog trên VPS Debian 9 hoặc Ubuntu 16.04

Gogs là một dịch vụ Git tự lưu trữ dễ dàng. Hướng dẫn này sử dụng PostgreSQL cho cơ sở dữ liệu và Nginx làm proxy ngược. Sau khi làm theo hướng dẫn này, bạn sẽ có thể truy cập giao diện web của Gogs HTTP và các kho lưu trữ git được lưu trữ thông qua HTTP và SSH. HTTPS có thể thêm quyền truy cập bằng cách mở rộng cấu hình Nginx.

>> Tham khảo dịch vụ VPS tại: https://inet.vn/vps

1. Thiết lập cơ sở dữ liệu

Hướng dẫn này sử dụng PostgreSQL. Ngoài ra, bạn có thể sử dụng MySQL / MariaDB, SQLite3, MSSQL hoặc TiDB.

Cài đặt PostgreSQL.

sudo apt-get install -y postgresql

Tạo người dùng mà Gogs sẽ kết nối với cơ sở dữ liệu

sudo -u postgres createuser gogs -P

Tạo cơ sở dữ liệu Gogs.

sudo -u postgres createdb gogs -O gogs -E UTF8

2. Thiết lập Reverse Proxy

Hướng dẫn này sử dụng Nginx làm proxy ngược. Ngoài ra, bạn có thể sử dụng một HTTPmáy chủ khác có thể hoạt động như một proxy ngược như Apache hoặc Caddy.

Cài đặt Nginx.

sudo apt-get install -y nginx

Chỉnh sửa /etc/nginx/sites-enabled/default.

sudo nano /etc/nginx/sites-enabled/default

Tìm các dòng sau.

location / {
        # First attempt to serve request as file, then
        # as directory, then fall back to displaying a 404.
        try_files $uri $uri/ =404;
}

Thay đổi chúng thành:

location / {
proxy_pass http://127.0.0.1:3000;
}

Reload lại Nginx để sử dụng cấu hình mới.

sudo systemctl reload nginx

3. Cài đặt Gogs

Đầu tiên, hãy chắc chắn rằng đã gitđược cài đặt.

sudo apt-get install -y git

Sau đó tạo người dùng Gogs sẽ chạy và sẽ được sử dụng để truy cập git SSH.

sudo useradd -m git

Tiếp theo, tải xuống và giải nén bản phát hành Gogs cho kiến ​​trúc của bạn.

Đối với hệ thống 64-bit.

sudo -u git sh -c "curl https://dl.gogs.io/0.11.29/linux_amd64.tar.gz | tar -xz -C /home/git/"

Đối với hệ thống 32-bit.

sudo -u git sh -c "curl https://dl.gogs.io/0.11.29/linux_386.tar.gz | tar -xz -C /home/git/"

Thiết lập Gogs để chạy khi khởi động.

sudo cp /home/git/gogs/scripts/systemd/gogs.service /etc/systemd/system
sudo systemctl enable gogs

Khởi động Gogs.

sudo systemctl start gogs

4. Cấu hình ban đầu

Truy cập http://example.comtrong trình duyệt web của bạn. Bạn sẽ thấy:Install Steps For First-time Run

Thay đổi các cài đặt sau.

Database Type: PostgreSQL
User: gogs
Password: (password you created earlier)
Domain: example.com
Application URL: http://example.com/

Bạn có thể muốn thiết lập Application Name, các Email Service Settings, và Server and Other Services Settings. Tất cả các cài đặt có thể được thay đổi sau này bằng cách chỉnh sửa /home/git/gogs/custom/conf/app.ini.

Bấm vào Install Gogs.

5. Chỉ cho phép truy cập HTTP (S) thông qua Nginx

Thêm HTTP_ADDR = 127.0.0.1vào [server] của /home/git/gogs/custom/conf/app.ini.

sudo -u git nano /home/git/gogs/custom/conf/app.ini

Sau thay đổi này, [server]sẽ trông giống như sau.

[server]
DOMAIN           = example.com
HTTP_ADDR        = 127.0.0.1
HTTP_PORT        = 3000
ROOT_URL         = http://example.com/
DISABLE_SSH      = false
SSH_PORT         = 22
START_SSH_SERVER = false
OFFLINE_MODE     = false

Khởi động lại Gogs để sử dụng cấu hình đã cập nhật.

sudo systemctl restart gogs

Be the first to comment

Leave a Reply

Your email address will not be published.


*