Uživatelské nástroje

Nástroje pro tento web


navody:server:nextcloud_docker_centos

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Následující verze
Předchozí verze
navody:server:nextcloud_docker_centos [2017/02/06 11:44] – vytvořeno stefannavody:server:nextcloud_docker_centos [2023/02/02 23:27] (aktuální) – smazáno openVZ parolek
Řádek 1: Řádek 1:
-====== Nextcloud v Dockeru na CentOS 7 ====== 
  
-Tento návod se týká zprovoznění dockeru přímo v naší VPS, tedy pod 
-[[informace:openvz|OpenVZ]], což jde jen s určitými omezeními, viz níže. 
- 
-Docker lze bez omezení provozovat s využitím [[navody:vps:kvm|KVM]]. 
- 
-Tento návod je vyzkoušen pro **CentOS 7.3.1611**. 
- 
- 
-===== Docker ===== 
- 
-1) vpsAdmin / VPS → Features → je třeba zapnout Bridge, iptables a TUN/TAP  (VPS se restartuje) 
- 
-2) Spusťte následující příkaz a znovu restartujeme VPS: 
- 
-  # echo "JoinControllers=cpu,cpuacct,cpuset freezer,devices" >> /etc/systemd/system.conf 
- 
-3) Docker u nás funguje jen do verze **1.10**. Novější verzi se zatím nikomu 
-nepovedlo zprovoznit, neboť to pravděpodobně vyžaduje úpravu jádra. 
- 
-V oficiálních repozitářích CentOS (repo //extras//) je již verze **1.13**, 
-ktera s OpenVZ nefunguje. Proto je třeba nainstalovat verzi **1.10.3**, která je také v repozitáři. 
-   
-  # yum install docker-1.10.3 
- 
-4) Je vhodné zakázat aktualizace dockeru, což provedeme příkazem: 
- 
-  # echo "exclude=docker*" >> /etc/yum.conf 
-   
-5) Aby měly kontejnery správný přístup k filesystému, je třeba upravit výchozí systemd unit. 
- 
-  # mkdir -p /usr/lib/systemd/system/docker.service.d/ 
-  # cat <<EOF > /etc/systemd/system/docker.service.d/shared_mounts.conf 
-    [Service] 
-    MountFlags=shared 
-    EOF 
- 
-6) Dáme vědět systemd o změnách a spustíme Docker: 
- 
-  # systemctl daemon-reload 
-  # systemctl start docker.service 
-  # systemctl enable docker.service 
-   
-Zkontrolujeme, zda je Docker úspěšně spuštěný. Můžeme vyzkoušet //hello-world// image: 
- 
-  # docker run hello-world 
-  
-<note>Na CentOS je potřeba Docker ovládat s administrátorskými právy. Přidání lokálního uživatele do skupiny //docker// zde nefunguje jako na jiných systémech (Debian).</note> 
- 
- 
-===== Nextcloud ===== 
- 
-Použijeme neoficiální, ale populárnější image https://hub.docker.com/r/wonderfall/nextcloud/. Databáze MariaDB bude v druhém kontejneru. 
- 
-1) Vytvoříme systémového uživatele, který bude vlastnit soubory Nextcloudu: 
- 
-  # useradd -r -s /sbin/nologin nextcloud 
-   
-Zjistíme UID a GID nového uživatele: 
- 
-  # id nextcloud 
- 
-2) Připravíme složky pro uchovávání dat z Docker kontejnerů. Všechny soubory budou uloženy pod ''/mnt/nas/nextcloud'', kde ''/mnt/nas'' je připojený dataset z NASu. 
- 
-  /mnt/nas/nextcloud/db 
-  /mnt/nas/nextcloud/data 
-  /mnt/nas/nextcloud/config 
-  /mnt/nas/nextcloud/apps 
-   
-Změníme vlastníka těchto složek příkazem: 
- 
-  # chown -R nextcloud:nextcloud /mnt/nas/nextcloud 
- 
-3) Stáhneme si Docker compose: 
- 
-  # curl -L "https://github.com/docker/compose/releases/download/1.10.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose 
-  # chmod +x /usr/local/bin/docker-compose 
- 
-4) Vytvoříme ''docker-compose.yml'' s následujícím obsahem: 
- 
-  version: '2' 
-  services: 
-    nextcloud-db: 
-      image: mariadb:10.1 
-      volumes: 
-        - /mnt/nas/nextcloud/db:/var/lib/mysql 
-      environment: 
-        - MYSQL_ROOT_PASSWORD=<password1> 
-        - MYSQL_DATABASE=nextcloud 
-        - MYSQL_USER=nextcloud 
-        - MYSQL_PASSWORD=<password2> 
-      restart: always 
-    nextcloud: 
-      image: wonderfall/nextcloud:11.0 
-      environment: 
-        - UID=991  # nextcloud user 
-        - GID=988  # nextcloud group 
-        - UPLOAD_MAX_SIZE=10G 
-        - APC_SHM_SIZE=128M 
-        - OPCACHE_MEM_SIZE=128 
-        - REDIS_MAX_MEMORY=64mb 
-        - CRON_PERIOD=15m 
-        - TZ=Europe/Prague 
-        - ADMIN_USER=admin 
-        - ADMIN_PASSWORD=<password3> 
-        - DB_TYPE=mysql 
-        - DB_NAME=nextcloud 
-        - DB_USER=nextcloud 
-        - DB_PASSWORD=<password2> 
-        - DB_HOST=nextcloud-db 
-      depends_on: 
-        - nextcloud-db 
-      volumes: 
-        - /mnt/nas/nextcloud/data:/data 
-        - /mnt/nas/nextcloud/config:/config 
-        - /mnt/nas/nextcloud/apps:/apps2 
-      ports: 
-        - 8888:8888 
-      restart: always 
- 
-Správně vyplníme některé hodnoty, hlavně hesla a UID a GID vytvořeného uživatele //nextcloud//. 
- 
-5) Spustíme kontejnery příkazem: 
- 
-  # /usr/local/bin/docker-compose up -d 
- 
-6) Nextcloud nyní poslouchá na adrese ''0.0.0.0:8888'', na kterou je třeba nastavit reverse proxy například v Apache nebo Nginx. 
- 
-<note warning>Zkontrolujte své nastavení firewallu, není vhodné nechávat port 8888 přístupný z internetu.</note> 
navody/server/nextcloud_docker_centos.1486381463.txt.gz · Poslední úprava: 2017/02/06 11:44 autor: stefan