diff --git a/ubuntu-22-04-vps.sh b/ubuntu-22-04-vps.sh new file mode 100644 index 0000000000000000000000000000000000000000..9befff4484265bc3b4bf66693eceeeb90dc7e543 --- /dev/null +++ b/ubuntu-22-04-vps.sh @@ -0,0 +1,86 @@ +#!/usr/bin/env sh + +# ssh root@191.101.70.46 + +#----------------------------------------------------------------------- +# Instalação do docker. + +docker --version + +# Use the apt command to install the docker.io package: +sudo apt-get update +sudo apt install docker.io -y +sudo apt install docker-compose -y + +docker --version +# Docker version 20.10.12, build 20.10.12-0ubuntu4 + +#----------------------------------------------------------------------- +# Cria diretório para arquivos do app. + +mkdir ipoliticos + +#----------------------------------------------------------------------- +# Volta para a máquina local e transfere os arquivos. + +ls ~/Projects/ipoliticos/deploy/ +rm ~/Projects/ipoliticos/deploy/deploy.zip + +# Usar `rsync` que é mais profissional. +rsync -avz -e ssh --progress \ + ~/Projects/ipoliticos/deploy/ \ + root@191.101.70.46:~/ipoliticos + +#----------------------------------------------------------------------- +# Abrir com dired no servidor com emacs. +# M-x /ssh:root@191.101.70.46:/root/ipoliticos +# C-c C-f /ssh:root@191.101.70.46:/root/ipoliticos + +# NOTE: Deixar sempre porta 3838 no Dockerfile. +# R> golem::add_dockerfile_with_renv(output_dir = "./deploy", +# R> port = 3838L, +# R> host = "0.0.0.0") + +#----------------------------------------------------------------------- +# Retorna para o servidor e bota o docker para rodar. + +ssh root@191.101.70.46 +cd ipoliticos + +# NOTE: demora bastante para instalar esse container. +docker build -f Dockerfile_base --progress=plain -t ipoliticos_base . +docker image ls + +# ATTENTION: tenho que trocar o IP? Não. +docker build -f Dockerfile --progress=plain -t ipoliticos:latest . +docker image ls + +# Bota o container para rodar. +docker run -p 3838:3838 ipoliticos:latest + +# DONE! +# Abrir o navegador em http://191.101.70.46:3838/. + +# Lista os containers. +sudo docker container ls +sudo docker container ls --format 'table {{.Names}}\t{{.Image}}\t{{.ID}}' + +#----------------------------------------------------------------------- +# Monitoramento e funcionamento. + +# Estatísticas. +CID=a2ec47d81c3d +docker container top $CID +docker stats $CID + +# Atualiza o funcionamento. +docker update --restart=no $CID +docker update --restart=unless-stopped $CID +docker update --restart=always $CID + +# Para parar e remover. +sudo docker stop $CID +sudo docker rm $CID +sudo docker rmi $CID + +#-----------------------------------------------------------------------