Cài đặt Padloc trên Ubuntu 20.04

Cài đặt Padloc trên Ubuntu 20.04

1. Cài đặt

Certbot và Git
  1. Cài đặt Git bằng cách sử dụng apt.
    $ sudo apt install git
    
  2. Xóa mọi phiên bản Certbot được cài đặt apt. Sẽ không sao nếu aptcác báo cáo không có cài đặt nào được cài đặt.
    $ sudo apt remove certbot
    
  3. Đảm bảo rằng phiên bản snapd của bạn được cập nhật.
    $ sudo snap install core; sudo snap refresh core
    
  4. Cài đặt Certbot bằng cách sử dụng snap.
    $ sudo snap install --classic certbot
    
  5. Chạy Certbot và làm theo lời nhắc để nhập tên miền của bạn và chuyển hướng tất cả lưu lượng truy cập sang HTTPS.
    $ sudo certbot certonly --standalone
    
  6. Ghi chú lại chứng chỉ và đường dẫn khóa riêng tư của bạn khi được cung cấp. Nó có thể khác nhau tùy thuộc vào miền được sử dụng.
    Certificate Path: /etc/letsencrypt/live/example.com/fullchain.pem
    Private Key Path: /etc/letsencrypt/live/example.com/privkey.pem
    

Nếu bạn đã sử dụng một nhà cung cấp SSL khác, hãy đảm bảo rằng họ đang ở trên máy chủ của bạn và biết đường dẫn đầy đủ của họ. Bạn có thể đưa chúng vào /etc/nginx/danh bạ nếu muốn.

Docker
  1. Xóa mọi phiên bản Docker cũ hơn và công cụ Docker.
    $ sudo apt remove docker docker-engine docker.io containerd runc
    
  2. Cài đặt Docker bằng cách sử dụng snap.
    $ sudo snap install docker
    

Cấu hình

Docker Container
  1. Tạo một thư mục được gọi padloctrong thư mục chính của bạn và nhập nó vào.
    $ mkdir ~/padloc
    $ cd ~/padloc
    
  2. Tạo và mở một docker-compose.ymltệp mới.
    $ nano docker-compose.yml
    
  3. Thêm các dòng sau vào tệp. Thay đổi example.comtên miền của bạn.
    version: "3"
    services:
        server:
            image: padloc/server
            container_name: padloc_server
            expose:
                - 3000
            volumes:
                - ${PL_DB_DIR:-./db}:/data
                - ${PL_ATTACHMENTS_DIR:-./attachments}:/docs
            environment:
                - PL_PWA_URL
                - PL_EMAIL_SERVER
                - PL_EMAIL_PORT
                - PL_EMAIL_USER
                - PL_EMAIL_PASSWORD
                - PL_EMAIL_FROM
        pwa:
            image: padloc/pwa
            container_name: padloc_pwa
            expose:
                - 8080
            volumes:
                - ${PL_PWA_DIR:-./pwa}:/pwa
            environment:
                - PL_SERVER_URL
        nginx:
            image: nginx
            container_name: nginx
            volumes:
                - ./nginx.conf:/etc/nginx/nginx.conf
                - ${PL_SSL_CERT:-./ssl/cert.pem}:/ssl/cert
                - ${PL_SSL_KEY:-./ssl/key.pem}:/ssl/key
            ports:
                - 80:80
                - 443:443
    
  4. Thoát khỏi tệp bằng cách sử dụng CTRLX, sau đó nhấn Y, sau đó nhấn ENTER.

Tệp cấu hình Nginx

  1. Tạo và mở một nginx.conftệp mới.
    $ nano nginx.conf
    
  2. Thêm các dòng sau vào tệp.
    http {
        client_max_body_size 10m;
        server {
            listen 80 default_server;
            listen [::]:80 default_server;
            server_name _;
            return 301 https://$host$request_uri;
        }
    
        server {
            server_name example.com;
            listen 443 ssl http2;
    
            location /server/ {
                proxy_pass http://padloc_server:3000;
                rewrite ^/padloc_server(.*)$ $1 break;
            }
    
            location / {
                proxy_pass http://padloc_pwa:8080;
                rewrite ^/padloc_pwa(.*)$ $1 break;
            }
    
            ssl_certificate /ssl/cert;
            ssl_certificate_key /ssl/key;
        }
    }
    
    events {}
    
  3. Thoát khỏi tệp bằng cách sử dụng CTRLX, sau đó nhấn Y, sau đó nhấn ENTER.

Tạo tệp .env

  1. Tạo một tệp mới được gọi .envtrong trình soạn thảo văn bản của bạn.
    $ nano .env
    
  2. Sao chép và dán các giá trị bên dưới vào trình soạn thảo văn bản của bạn và thay đổi chúng cho phù hợp với cấu hình của bạn.
    # URL that points to the web application
    PL_PWA_URL=https://example.com/
    # URL that points to the server instance
    PL_SERVER_URL=https://example.com/server/
    
    # The port the server instance will listen on
    PL_SERVER_PORT=3000
    # The directory where database files will be stored
    PL_DB_DIR=./db
    # The directory where attachment files will be stored
    PL_ATTACHMENTS_DIR=./attachments
    
    # The port the web application will be served from
    PL_PWA_PORT=8080
    # The directory where the static code for the web application will be stored
    PL_PWA_DIR=./pwa
    
    # SMTP host
    PL_EMAIL_SERVER=smtp.example.com
    # SMTP username
    PL_EMAIL_USER=example@example.com
    # SMTP port
    PL_EMAIL_PORT=443
    # SMTP password
    PL_EMAIL_PASSWORD=CHANGE_ME
    # Use TLS when sending emails
    PL_EMAIL_SECURE=false
    
    # The path to your SSL certificate (change example.com)
    PL_SSL_CERT=/etc/letsencrypt/live/example.com/fullchain.pem
    # The path to your SSL private key (change example.com)
    PL_SSL_KEY=/etc/letsencrypt/live/example.com/privkey.pem
    
  3. Lưu và thoát khỏi trình soạn thảo văn bản bằng cách sử dụng CTRLX, sau đó Y, tiếp theo là ENTER.
  4. Chạy Padloc bằng cách sử dụng docker-composeở chế độ tách rời. Điều này có thể mất một vài giây.
    $ sudo docker-compose up -d
    
  5. Kiểm tra xem Padloc có đang chạy hay không bằng cách sử dụng docker. Trạng thái nên được Up.
    $ sudo docker ps
    STATUS
    Up x seconds/minutes
    

Bây giờ bạn đã cài đặt và cấu hình thành công Padloc.

Các bước hoàn thiện

Bây giờ bạn nên điều hướng đến cài đặt Padloc của mình và tạo một tài khoản.

https://example.com

Be the first to comment

Leave a Reply

Your email address will not be published.


*