Installer og sett opp docker:
pacman -Syu docker
systemctl start docker
usermod -aG docker dvikan
newgrp docker # med min non-root bruker
docker pull ubuntu:14.04
vim Dockerfile
Min Dockerfile ser slik ut:
FROM ubuntu:14.04
RUN apt-get update
RUN apt-get install -y nginx
COPY docker/default /etc/nginx/sites-enabled/
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
Kommandoen som er spesifisert sist med CMD må kjøre og ikke gå i bakgrunnen. Ellers avslutter containeren. Ved å unngå daemonisering av nginx oppnås dette.
Bygg image:
docker build -t julekalender .
Lag og kjør container fra image:
docker run -p 80:80 julekalender
-p 80:80 gjør at port 80 på host blir routet til containeren sin ip adresse og port 80.
Jeg fikk feilmeldingen
nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)
Løses med å fjerne listen [::]:80 default_server ipv6only=on; fra /etc/nginx/sites-enabled/default