Afinal o que é Docker?
De maneira simplificada para não assustar ninguém, o Docker é uma forma de container onde utiliza o OS para compartimentar configurações padrões, a grande vantagem do mesmo é o deploy em produção e os ambientes de todos os devs estarem alinhados mesmo que os devs utilizem múltiplos OS diferentes.
Ao meu ver a grande vantagem do Docker em relação a VM pra desenvolvimento é que a VM você compartimenta recursos e instalado um OS do zero inclusive toda vez que precisa usa-lo você precisa dar boot no sistema operacional da VM, no Docker isso não é necessário mas como é feita essa diferenciação?
Aproveitando que preciso desenvolver um Docker para testar o Blog Open Source que desenvolvi, https://github.com/andmarruda/sbblog vou configurar um ensinando passo a passo aqui como fazer seu primeiro container Docker.
Mas Anderson, porque não usa o sail do laravel?
Se usasse o sail do laravel eu não poderia fazer uma boa introdução ao Docker para quem é muito recém chegado ao mesmo.
Pude perceber que pelo sistema ser nativo o Linux tem uma eficiência muito grande rodando Docker, já o Windows tem algumas dificuldades relacionada ao WSL2 e a conversão de formatação de arquivo, muitas vezes tendo que converter de NTFS pra EXT4 o que causa uma lentidão absurda, no Mac ainda não tive experiência mas estou ansioso para ter.
Como contornei a lentidão no Windows?
Procuro configurar o Docker sempre usando o Ubuntu dentro do Linux o que aumenta e muito a eficiência e desempenho do container. Mas caso queiram que eu comentei mais sobre isso por favor digam nos comentários, #comoMelhorarDockerWsl2
O SBBlog foi projetado para rodar com Laravel 9 e PostgreSQL por isso irei pegar uma imagem de php-fpm de dockerfile para iniciar o pensamento do container do Docker para esse projeto.
O PostgreSQL vai ter suas características e configurações, não somente o nginx e o php, por isso é necessário que se atente e não as esqueça para trás.
A primeira coisa que fiz foi procurar referências de imagens oficiais:
Vão perceber que grande parte das soluções que você pensa em customizar manualmente já foi prevista pelas imagens oficiais no Docker, então é sempre bom tentar ler antes de tentar fazer configurações na mão, configurações na mão requer muita experiência e muito experimento até que seja refinado e flua da forma adequada a seu problema, dito isso vamos prosseguir.
docker-compose.yml
Primeiro eu criei uma pasta na raiz do projeto chamada docker-compose onde ficará armazenado os arquivos de configuração dos serviços que irei utilizar, os arquivos de PostgreSQL eu já falei em outros posts então não vou entrar em detalhes deles para não ficar muito longo.
Aqui estão os arquivos que utilizei.
https://github.com/andmarruda/docker-pgsql-php-laravel
Afinal o que é o Docker-compose.yml?
É o arquivo que descreve a composição, os pacotes, instalações, portas e configurações gerais que o Docker terá que executar.
Dockerfile
Arquivo de configuração usado no Docker para construir imagens de contêiner personalizadas, descrevendo passos e as configurações necessárias para criar uma imagem de contêiner específica que pode ser usada para executar aplicativos ou serviços em seus respectivos contêineres.
version: "3.7"
services:
app:
build:
args:
user: root
uid: 1000
context: ./
dockerfile: Dockerfile
image: sbblog-laravel
container_name: sbblog-dockerized
restart: unless-stopped
working_dir: /var/www
volumes:
- ./:/var/www
networks:
- sbblog-network
command: ["sh", "-c", "php-fpm && composer update && php artisan migrate"]
nginx:
image: nginx
container_name: sbblog-nginx
restart: unless-stopped
ports:
- "100:80"
volumes:
- ./:/var/www
- ./docker-compose/nginx:/etc/nginx/conf.d/
networks:
- sbblog-network
pgsqldb:
image: postgres:16
container_name: sbblog-pgsqldb
restart: unless-stopped
ports:
- "5432:5432"
environment:
POSTGRES_USER: sbblog_user
POSTGRES_PASSWORD: Sbblog@123
POSTGRES_DB: sbblogdb
volumes:
- sbblog-dbdata:/var/lib/postgresql/16/main
- ./docker-compose/pg_hba.conf:/etc/postgresql/16/main/pg_hba.conf
- ./docker-compose/postgresql.conf:/etc/postgresql/16/main/postgresql.conf
networks:
- sbblog-network
networks:
sbblog-network:
driver: bridge
name: sbblog-network
volumes:
sbblog-dbdata:
driver: local
Dockerfile
FROM php:8.2-fpm
ARG user
ARG uid
RUN apt update && apt install -y \
git \
curl \
libcurl4-openssl-dev \
sudo \
nano \
apt \
wget \
libpng-dev \
libonig-dev \
libxml2-dev \
libpq-dev \
zip \
libzip-dev \
unzip \
software-properties-common && \
rm -rf /var/lib/apt/lists/*
RUN docker-php-ext-install pdo_pgsql mbstring exif pcntl bcmath gd zip curl opcache xml zip
RUN pecl install xdebug && docker-php-ext-enable xdebug
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
RUN mkdir -p /home/$user/.composer && \
chown -R $user:$user /home/$user && \
chmod -R 777 /home/$user/.composer && \
composer config --global process-timeout 2000
WORKDIR /var/www
USER $user
Criei esse Docker como base para ambiente de desenvolvimento, também é uma base para produção porém para isso deve-se considerar melhorar a segurança, evitar utilizar usuário como root e afins, adicionando alguns passos adicionais para que o ambiente fique seguro.
Esse é meu primeiro tutorial do Docker, se gostaram por favor compartilhem, espero ajudar vocês, se quiserem deixar comentários me ensinando coisas novas por favor fiquem a vontade.
Espero vocês no próximo artigo... Até mais!
bornoftroublepdften
25/12/2025 05:16Born of Trouble is a book for those who love a story that is as tough as it is beautiful. This gritty and poetic narrative is now available in a portable pdf format. Experience the power of the written word in this exceptional work. https://bornoftroublepdf.site/ Born Of Trouble Paperback Vs Pdf
isthisacryforhelppten
26/12/2025 01:55The Is This a Cry for Help PDF is a fantastic addition to any digital collection of contemporary literature. This electronic version offers superior readability and quick access to the text. Download the file today and start an emotional journey that you will want to finish. https://isthisacryforhelppdf.site/ Is This A Cry For Help Text Version
clapwhenyoulandpdften
26/12/2025 04:06From the bustling streets of NYC to the beaches of the DR, this story transports you to the heart of a fractured family. It is a raw and honest portrayal of grief. To get started immediately, search for the Clap When You Land PDF and dive into a world of poetic storytelling. https://clapwhenyoulandpdf.site/ Clap When You Land Book Cover
Marsvinnaita
01/01/2026 17:03I find this forum very interesting. There's a lot of useful information here.
Marsvinnaita
01/01/2026 23:32I find this forum very interesting. There's a lot of useful information here.
Marsvinnaita
02/01/2026 06:34I find this forum very interesting. There's a lot of useful information here.
Marsvinnaita
03/01/2026 10:12I find this forum very interesting. There's a lot of useful information here.
Justin McCarty
24/01/2026 09:33Hey there, I was wondering if you took guest posts on andersonarruda.com.br? If so, how would I go about getting one on your site? If there is a fee, let me know. Also, if you have any other sites you can get me a post on please list them. Thanks Justin
tomsawyerpdften
02/10/2026 17:49Critics often discuss the structure of the novel, noting how it moves from a series of pranks to a mature adventure. This evolution of the protagonist is subtle and masterful. If you are writing a paper on character development, you need quick access to the text. A Tom Sawyer PDF is the researcher's best friend, allowing for keyword searches and fa
GeorgeBus
26/07/2026 04:29New in the Category: <a href=https://karfaoqer.com/>https://karfaoqer.com</a>
ScottInsut
31/07/2026 17:26Read the complete article <a href=https://sapreqot.com/>https://sapreqot.com</a>
dallapartedellebamten
02/10/2026 17:46Dalla parte delle bambine è un'indagine sociologica che si legge d'un fiato. Elena Gianini Belotti ha uno stile diretto e coinvolgente. Se hai bisogno del pdf per una ricerca scolastica, troverai materiale abbondante sulla scuola materna e sui libri di testo. L'autrice critica la rappresentazione della mamma sempre in cucina e del papà se
scrivereeunmestierten
02/10/2026 17:48Un giallo che profuma di caffè e carta stampata. Scrivere è un mestiere pericoloso è il romanzo che ha lanciato Vani Sarca. Alice Basso ha saputo creare un personaggio iconico. Se cerchi il pdf, preparati a entrare in sintonia con una ghostwriter cinica ma geniale. La trama è avvincente, con un mistero che si svela pagina dopo p
throneofglasspdften
02/10/2026 17:55The path to freedom is never a straight line. Throne of Glass is full of twists and turns. Celaena's character arc is satisfying and complex. The world-building is expansive, hinting at lands beyond Adarlan. Sarah J. Maas has created a universe that feels real. whether you read a physical copy or a throne of glass pdf, you will be transported. Star
acourtofwingsandruten
02/10/2026 18:09The vivid descriptions of Velaris and the terrifying landscapes of Hybern make this book a visual feast for the imagination. Feyre's journey is one of self-discovery and leadership amidst chaos. Readers often look for the A Court of Wings and Ruin PDF to easily access the glossary and maps included in the digital editions. Understanding the geograp
thekissingboothpdften
07/10/2026 12:50Friends, brothers, and a kissing booth. These are the ingredients for a perfect drama. Beth Reekles blends them expertly in this novel. Elle is a relatable heroine who finds herself in a difficult situation. Readers love the digital convenience of a PDF version to read this addictive story. It is a look at how secrets can poison a friendship and ho
swingingislandpdften
07/10/2026 12:51https://swingingislandpdf.site/
unavitanuovapdften
07/10/2026 13:01La chimica tra i due personaggi principali è palpabile e rende ogni dialogo un piccolo capolavoro di naturalezza. Si parla di tutto, senza tabù, come solo i veri amici sanno fare. Se preferisci leggere in formato elettronico, la ricerca di una vita nuova pdf ti permetterà di avere il libro sempre a portata di mano. La comodità d
nessunotornaindietten
07/10/2026 15:58La Roma degli anni Trenta non è solo uno scenario, ma quasi un personaggio aggiunto in questo intenso romanzo di Alba de Céspedes. Tra le strade della capitale e le stanze silenziose del convitto, si intrecciano i destini di giovani donne in cerca di sé stesse. La scrittura è limpida, elegante, capace di evocare immagini nitide
theroundhousepdften
08/10/2026 00:33https://theroundhousepdf.site/