Hướng dẫn này sẽ hướng dẫn bạn quy trình cài đặt Gogs trên VPS Debian 9 với MariaDB làm máy chủ cơ sở dữ liệu.
Gogs là một dịch vụ Git tự lưu trữ miễn phí và mã nguồn mở được viết bằng ngôn ngữ lập trình Go. Nó dễ cài đặt, đa nền tảng và nhẹ, và tất cả các thuộc tính này cho phép các Gogs chạy trên tất cả các loại phần cứng một cách dễ dàng. Hướng dẫn này cũng hoạt động trên các hệ thống VPS Linux khác , nhưng nó được thử nghiệm và viết cho VPS Debian 9 . Hãy bắt đầu với việc cài đặt.
Điều kiện tiên quyết
- Một Debian 9 Virtual Server
- Tài khoản người dùng có quyền sudo hoặc quyền truy cập vào chính người dùng ‘root’
Bước 1: Cài đặt các gói cần thiết
Đăng nhập vào VPS của bạn thông qua SSH với quyền root hoặc là người dùng sudo:
ssh userame@IP_Address -p Port_Number
Hãy chắc chắn rằng bạn thay thế IP_Address và và Port Port_Number, bằng địa chỉ IP và số cổng SSH tương ứng của máy chủ của bạn.
Sau khi đăng nhập, hãy ban hành các lệnh sau để cập nhật tất cả các gói đã cài đặt lên phiên bản mới nhất có sẵn của chúng:
sudo apt-get update sudo apt-get upgrade
Sau đó, cài đặt gói git bằng lệnh sau:
sudo apt-get install git
Bước 2: Tạo cơ sở dữ liệu MariaDB
Các gs có thể sử dụng MySQL / MariaDB, PostgreSQL, MSSQL, TiDB và SQLite3 cho phần phụ trợ cơ sở dữ liệu của nó.
Trong hướng dẫn này, chúng tôi sẽ sử dụng MariaDB. Nếu máy chủ MySQL hoặc MariaDB không được cài đặt trên máy chủ của bạn, bạn có thể cài đặt phiên bản MariaDB mới nhất bằng cách thực hiện lệnh sau:
sudo apt-get install mysql-server
Khi quá trình cài đặt MariaDB hoàn tất, bạn nên chạy mysql_secure_installation
tập lệnh để cải thiện tính bảo mật của máy chủ cơ sở dữ liệu của bạn:
sudo mysql_secure_installation
Trả lời các câu hỏi bảo mật như sau. Nếu tại bất kỳ thời điểm nào bạn được yêu cầu nhập mật khẩu MariaDB gốc trước khi tiếp tục, chỉ cần nhấn phím [Enter], vì không có mật khẩu nào được đặt theo mặc định:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Đăng nhập vào vỏ MySQL bằng người dùng root MySQL và mật khẩu mà bạn đã thiết lập trước đó:
mysql -u root -p
Tạo cơ sở dữ liệu và người dùng MySQL cho Gogs và cấp quyền cho người dùng bằng cách ban hành các lệnh sau:
MariaDB [(none)]> CREATE SCHEMA `gogs` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; MariaDB [(none)]> GRANT ALL PRIVILEGES ON gogs.* TO 'gogs'@'localhost' IDENTIFIED BY 'strongpassword'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT
Hãy chắc chắn rằng bạn thay thế ‘ strongpassword ‘ với một mật khẩu mạnh thực tế.
Bước 3: Cài đặt Gogs
Tạo một người dùng hệ thống mới sẽ chạy máy chủ Gogs:
sudo adduser --home /opt/gogs --shell /bin/bash --gecos 'Gogs application' gogs
Tiếp theo, tải xuống tệp nhị phân của Gogs từ trang Github của Gogs bằng cách sử dụng ‘wget’:
wget https://github.com/gogs/gogs/releases/download/v0.11.86/linux_amd64.tar.gz
Trích xuất kho lưu trữ đã tải xuống vào /opt/gogs
thư mục:
sudo tar xvf linux_amd64.tar.gz --strip-components=1 -C /opt/gogs
Thay đổi quyền sở hữu thư mục thành người dùng Gogs:
sudo chown -R gogs: gogs / opt / gogs /
Tiếp theo, sao chép tệp đơn vị SystemD. Điều này cho phép chúng tôi tạo ra một dịch vụ SystemD cho Gogs:
sudo cp /opt/gogs/scripts/systemd/gogs.service / etc / systemd / system /
Mở tệp đơn vị bằng cách sử dụng trình soạn thảo văn bản của bạn. Chúng tôi sẽ sử dụng nano.
sudo nano /etc/systemd/system/gogs.service
Khi tệp được mở, hãy chỉnh sửa tệp như sau:
[Unit] [Unit] Description=Gogs After=syslog.target After=network.target After=mariadb.service mysqld.service postgresql.service memcached.service redis.service [Service] # Modify these two values and uncomment them if you have # repos with lots of files and get an HTTP error 500 because # of that ### #LimitMEMLOCK=infinity #LimitNOFILE=65535 Type=simple User=gogs Group=gogs WorkingDirectory=/opt/gogs ExecStart=/opt/gogs/gogs web Restart=always Environment=USER=gogs HOME=/opt/gogs # Some distributions may not support these hardening directives. If you cannot start the service due # to an unknown option, comment out the ones not supported by your version of systemd. ProtectSystem=full PrivateDevices=yes PrivateTmp=yes NoNewPrivileges=true [Install] WantedBy=multi-user.target
Khi bạn hoàn tất chỉnh sửa tệp, hãy lưu tệp, sau đó bắt đầu và bật dịch vụ Gogs:
sudo systemctl daemon-reload sudo systemctl start gogs sudo systemctl enable gogs
Chạy lệnh sau để xác minh rằng dịch vụ Gogs được khởi động thành công:
sudo systemctl status gogs
● gogs.service - Gogs Loaded: loaded (/etc/systemd/system/gogs.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-05-13 02:57:32 CDT; 29s ago Main PID: 791 (gogs) CGroup: /system.slice/gogs.service └─791 /opt/gogs/gogs web May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ WARN] Custom config '/opt/gogs/custom/conf/app.ini' not found, ignore this if you're running first time May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [TRACE] Custom path: /opt/gogs/custom May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [TRACE] Log path: /opt/gogs/log May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [TRACE] Log Mode: Console (Trace) May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] Gogs 0.11.86.0130 May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] Cache Service Enabled May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] Session Service Enabled May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] SQLite3 Supported May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] Run Mode: Development May 13 02:57:33 vps gogs[791]: 2019/05/13 02:57:33 [ INFO] Listen: http://0.0.0.0:3000
Bước 4: Thiết lập Gogs
Sau khi cài đặt hoàn tất, hãy đi đến http://server_ip:3000/install
và điền vào tất cả các trường bắt buộc. Đừng quên thay thế server server_ip, bằng địa chỉ IP công cộng của máy chủ của bạn:
Cài đặt cơ sở dữ liệu
- Loại cơ sở dữ liệu: MySQL
- Tổ chức:
127.0.0.1:3306
- Người dùng: gogs
- Mật khẩu: strongpassword
- Tên cơ sở dữ liệu: gogs
Cài đặt chung của Gogs
- Tên ứng dụng: Gogs
- Đường dẫn gốc kho lưu trữ:
/opt/gogs/gogs-repositories
- Chạy người dùng: gogs
- Tên miền: SERVER_IP
- Cổng SSH: 22
- Cổng HTTP: 3000
- URL ứng dụng: http: // SERVER_IP : 3000 /
- Đường dẫn đăng nhập:
/opt/gogs/log
Sau khi hoàn tất, nhấp vào nút cài đặt và bạn sẽ thấy ổn.
Quyền truy cập quản trị được tự động cấp cho người dùng đã đăng ký đầu tiên:
Đó là nó. Bạn đã cài đặt thành công Gogs trên VPS Debian 9 của mình . Để biết thêm thông tin về cách quản lý cài đặt Gogs của bạn, vui lòng tham khảo tài liệu chính thức của Gogs..
PS . Nếu bạn thích bài đăng này hoặc thấy nó hữu ích, vui lòng chia sẻ nó với bạn bè của bạn trên các mạng xã hội bằng cách sử dụng các phím tắt chia sẻ bên dưới hoặc chỉ cần để lại nhận xét trong phần bình luận. Cảm ơn bạn.