Instalando Nextcloud com Docker na 4BDigital

Instalando Nextcloud com Docker na 4BDigital

Neste guia estaremos demonstrando como realizar a instalação do Nextcloud com docker na Brascloud.

Índice:

Pré-requisitos


Antes de começar, veja as seguintes etapas:


  • Uma instância criada executando o Ubuntu 18.04, CentOS ou Debian (nesse exemplo é usado CentOs 7)
  • Uma instalação do Docker em funcionamento:
Instalação Docker
$ curl -fsSL https://get.docker.com/ | sh
$ systemctl start docker
  • Instalar o Docker Compose:
Instalação Docker
$ curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
$ ll /usr/bin/docker* - verificar se o docker compose está ali e suas permissões
$ chmod +x - se o mesmo estiver sem permissão para ser executado
$ docker-compose --version
docker-compose version 1.25.4, build 8d51620a

Etapa 1: Instalando Nextcloud


Existe vários exemplos disponíveis para subir imagens com docker compose. Veja essas opções no GitHub oficial da Nextcloud aqui.

Para este tutorial, usamos a seguinte configuração com Nginx, MariaDB e FPM.

https://github.com/nextcloud/docker/tree/master/.examples/docker-compose/with-nginx-proxy/mariadb/fpm

Antes de começar clone o repositório e copie a a pasta /fpm para /root:

$ git clone https://github.com/nextcloud/docker.git
$ cp -r .examples/docker-compose/with-nginx-proxy/mariadb/fpm/ /root
$ cd fpm

Começaremos editando o arquivo docker-compose.yml

$ vim docker-compose.yml

Defina uma senha para o root do seu banco:

  db:
    image: mariadb
    command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
    restart: always
    volumes:
      - db:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=SUA_SENHA
    env_file:
      - db.env

Defina também uma senha no arquivo db.env

$ vim db.env
	MYSQL_PASSWORD=SUA_SENHA
	MYSQL_DATABASE=nextcloud
	MYSQL_USER=nextcloud

Defina um virtual_host, no nosso caso estamos utilizando o IP público que pode ser encontrado em Cloud > Rede > >Nome da sua rede< IP Público no nosso portal.

$ vim docker-compose.yml
....
  web:
    build: ./web
    restart: always
    volumes:
      - nextcloud:/var/www/html:ro
    environment:
      - VIRTUAL_HOST=186.237.57.56 << Insira seu IP público
      - LETSENCRYPT_HOST=186.237.57.56 << Insira seu IP público
      - LETSENCRYPT_EMAIL=email@email.com.br
    depends_on:
      - app
    networks:
      - proxy-tier
      - default

Agora iniciaremos os containers do docker:

$ docker-compose up -d

Etapa 2: Liberando as portas de acesso no portal 4BDigital


Entre com sua conta no portal.brascloud.com.br. Após isso acesse Cloud > Rede, selecione sua rede ligada a máquina,  em "IP Público" selecione o IP.

Primeiramente iremos librar a porta no firewall. Selecione Firewall e libere a porta desejada, nesse exemplo irei expor a porta 8000 para toda internet, mas pode ser qualquer porta que desejar.

Agora é necessário configurar o encaminhamento de porta, selecione "Encaminhamento de porta", encaminhe a porta 80 para a porta que foi aberta anteriormente:

Etapa 3: Acessando a Nextcloud


Abra o navegador e insira seu IP público e a porta liberada:

Agora crie um usuário administrador da conta e conclua a configuração.

Após isso o Nextcloud será instalado e seu ambiente esta pronto para ser utilizado!


Próximos passos: