Last active
December 24, 2021 03:48
-
-
Save gabrielsimplicio/756edd405174cc5b2700d4b9d098be27 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
******** PARTE 1 - COMANDOS BÁSICOS | |
## Para listar as imagens existentes localmente | |
-> docker images | |
## Para rodar um container | |
-> docker run -it centos /bin/bash | |
run > executar uma imagem | |
-i > interatividade | |
-t > tty | |
centos > nome da imagem | |
/bin/bash > comando que deve ser executado após download da imagem e criação do container | |
* Se não tiver localmente, vai baixar lá do docker hub (https://hub.docker.com) | |
## Para exibir a versão do centos | |
-> cat /etc/*release* | |
* Observar que está dentro do container | |
## Para mostrar que é uma máquina como qualquer outra | |
-> yum update -y - CENTOS | |
## Para mostrar que somente o que eu quero está sendo executado | |
-> ps -ef | |
## Para sair sem encerrar o container | |
-> CTRL + P + Q | |
* Se eu sair com "exit", ou com "CTRL + D", eu vou encerrar o container. Com o "CTRL + P + Q", o container continuará ativo. | |
## Para listar os containers em execução | |
-> docker ps | |
## Para listar todos os containers - inativos ou não | |
-> docker ps -a | |
## Para entrar em um container em execução | |
-> docker attach <container-id> | |
## Para enviar um comando para um container em execução | |
-> docker exec <container-id> ps -ef | |
## Para parar um container | |
-> docker stop <container-id> | |
## Para remover um container | |
-> docker rm <container-id> | |
******** PARTE 2 - EXTERNALIZANDO PORTAS | |
## Para rodar um container, externalizando as portas | |
-> docker run -it -p 5000:80 ubuntu /bin/bash | |
-p > especificar a porta | |
5000 > porta do host | |
80 > porta do container | |
## Para instalar o nginx | |
-> apt-get update | |
-> apt-get install nginx -y | |
## Para iniciar o nginx | |
-> /etc/init.d/nginx start | |
## Para ver o processo do nginx (e demais processos) em execução | |
-> ps -ef | |
## Para exibir o nginx em execução | |
-> abrir o navegador | |
-> localhost:5000 | |
******** PARTE 3 - DOCKER COMMIT | |
## Para criar uma imagem | |
-> docker commit <container-id> <nome>:1.0 | |
-> docker images | |
## Para criar o container da imagem recém-criada | |
-> docker run -it -p 5001:80 <nome>:1.0 /bin/bash | |
## Para iniciar o nginx | |
-> /etc/init.d/nginx start | |
## Para ver o processo do nginx (e demais processos) em execução | |
-> ps -ef | |
## Para listar os containers em execução | |
-> docker ps | |
## Para exibir o nginx em execução | |
-> abrir o navegador | |
-> localhost:5001 | |
## Para exibir o log do nginx em tempo real | |
-> tail -f /var/log/nginx/access.log | |
-> atualizar a página do navegador | |
******** PARTE 4 - MAPEANDO DIRETÓRIOS | |
## Para compartilhar volumes com o host | |
-> docker run -it -p 5002:80 -v /home/gabriel/devmt-demo/build:/var/www/html <nome>:1.0 /bin/bash | |
-> /etc/init.d/nginx start | |
## Para exibir o nginx em execução | |
-> abrir o navegador | |
-> localhost:5002 | |
******** PARTE 5 - DOCKER HUB | |
- Abrir http://hub.docker.com/, para visualizar as imagens disponíveis | |
## Para compartilhar volumes com o host | |
docker run -d -p 5003:80 -v /home/gabriel/devmt-demo/build:/usr/share/nginx/html nginx | |
-> abrir o navegador | |
-> localhost:5003 | |
******** PARTE 6 - DOCKER FILE | |
- Navegar até o projeto demo | |
-> cd /home/gabriel/devmt-demo | |
## Para criar um arquivo | |
-> touch Dockerfile | |
- Inserir o seguinte conteúdo: | |
FROM nginx | |
COPY ./build /usr/share/nginx/html | |
EXPOSE 80 | |
## Para construir a imagem via Dockerfile | |
-> docker build -t devmt-demo . | |
build > gerar uma imagem através de um Dockerfile | |
-t > tag | |
devmt-demo > nome da imagem | |
. > diretório na qual eu devo ler o Dockerfile | |
-> docker images | |
## Para criar um container com a imagem recém-criada | |
-> docker run -d -p 5004:8080 devmt-demo | |
## Para exibir o app em funcionamento | |
- Abrir o navegador | |
- localhost:5004 | |
* O projeto demo é um projeto simples feito em react. Pode ser substituído por qualquer aplicação estática feita em html. |
como trabalhar com portas no ambiente de produção ao criar um container ?
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Na linha 6 você definiu como "Para rodar um container", p/ iniciantes seria melhor dizer "Criar um novo container a partir de uma imagem"