linux:debian:install-p2p

Aquesta és una revisió antiga del document


server + docker

setup.sh
apt-get update
apt-get upgrade -y
apt install sudo 
    vim \
    mc \
    ncdu \
    curl \
    wget \
    git \
    fonts-powerline \
    zsh \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg2 \
    software-properties-common
useradd -m -d /home/user user
passwd user
usermod -a -G sudo user 
vim /etc/sudoers.d/nopass # user ALL=(ALL) NOPASSWD:ALL
vim /etc/ssh/sshd_config # PermitRootLogin No
  1. crear estructura de directorios:
    mkdir -p data/nginx/conf.d
    mkdir -p data/nginx/www
    mkdir -p data/certbot/www
    mkdir -p data/certbot/conf
  2. crear fichero configuración nginx:
    server {
        listen 80;
        server_name <SERVER_NAME>;
    #    location / {
    #        return 301 https://$host$request_uri;
    #    }
        root /var/www/html;
        index index.html;
        
        location /.well-known/acme-challenge/ {
            root /var/www/certbot;
        }
    }
    #server {
    #    listen 443 ssl;
    #    server_name <SERVER_NAME>;
    #    ssl_certificate /etc/letsencrypt/live/k0.vividumcodex.com/fullchain.pem;
    #    ssl_certificate_key /etc/letsencrypt/live/k0.vividumcodex.com/privkey.pem;
    ##    include /etc/letsencrypt/options-ssl-nginx.conf;
    ##    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
    #
    #    location / {
    #	root /var/www/html;
    #    }
    }
  3. ejecutar:
    run-nginx.sh
    docker run \
    	-it \
    	--name nginx \
    	--rm \
    	-p 80:80 \
    	-v ${PWD}/data/nginx/conf.d:/etc/nginx/conf.d \
    	-v ${PWD}/data/nginx/www:/var/www/html \
    	-v ${PWD}/data/certbot/conf:/etc/letsencrypt \
    	-v ${PWD}/data/certbot/www:/var/www/certbot \
    nginx:1.15-alpine
  4. ejecutar:
    run-certbot.sh
    docker run \
    	-it \
    	--name certbot \
    	--rm \
    	-v ${PWD}/data/certbot/conf:/etc/letsencrypt \
    	-v ${PWD}/data/certbot/www:/var/www/certbot \
    certbot/certbot:latest certonly
    • opción 2 (place files in webroot directory)
    • webroot: /var/www/certbot

https://medium.com/@pentacent/nginx-and-lets-encrypt-with-docker-in-less-than-5-minutes-b4b8a60d3a71

docker-compose.yml
version: '3'
services:
  nginx:
    image: nginx:1.15-alpine
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./data/nginx/conf.d:/etc/nginx/conf.d
      - ./data/nginx/www:/var/www/html
      - ./data/certbot/conf:/etc/letsencrypt
      - ./data/certbot/www:/var/www/certbot
#    command: "/bin/sh -c 'while :; do sleep 6h & wait $${!}; nginx -s reload; done & nginx -g \"daemon off;\"'"

  certbot:
    image: certbot/certbot
    volumes:
      - ./data/certbot/conf:/etc/letsencrypt
      - ./data/certbot/www:/var/www/certbot
    command: "certonly"
# #   entrypoint: "/bin/sh -c 'trap exit TERM; while :; do certbot renew; sleep 12h & wait $${!}; done;'"
  1. crear estructura de directorios:
    mkdir -p data/downloads/completo
    mkdir -p data/root
    mkdir -p data/rutorrent
  2. copiar ficheros de configuración contenedor en /root (sacados del propio contenedor y modificar los ficheros de configuración de nginx):
    • añadir:
      location /completo {
              alias /downloads/completo;
              autoindex on;
      }
  3. copiar fichero config.php en data/rutorrent (para cambiar variable $forbidUserSettings = true;)
  4. crear enlaces simbólicos:
    # los enlaces funcionarán desde dentro del contenedor por el mapeo de volumen
    ln -s /etc/letsencrypt/live/k0.vividumcodex.com/cert.pem nginx.crt
    ln -s /etc/letsencrypt/live/k0.vividumcodex.com/privkey.pem nginx.pem

- ejecutar:

CERTBOT_PATH="/home/user/workspaces/nginx+certbot"
 
docker run \
	-dt \
	--restart unless-stopped \
	--name rtorrent-rutorrent \
	-p 443:443 \
	-p 49160:49160/udp \
	-p 49161:49161 \
	-v ${PWD}/data/downloads:/downloads \
	-v ${PWD}/data/root:/root \
	-v ${PWD}/data/rutorrent/config.php:/var/www/rutorrent/conf/config.php \
	-v ${CERTBOT_PATH}/data/certbot/conf:/etc/letsencrypt \
	-v ${CERTBOT_PATH}/data/certbot/www:/var/www/certbot \
diameter/rtorrent-rutorrent:latest
  • linux/debian/install-p2p.1580594869.txt.gz
  • Darrera modificació: 01/02/2020 14:07
  • per mate