Docker Registry & Rootless Docker
Appearance
sudo apt update
sudo apt install apache2-utils
Buat direktori untuk simpen credential & Config lain
mkdir -p ~/my-registry/{auth,data,certs}
cd ~/my-registry
Buat password file
htpasswd -bnB <NAME> <PASSWORD> > auth/htpasswd
Run Registry
docker run -d \
--restart=always \
--name my-registry \
-v `pwd`/data:/var/lib/registry \
-v `pwd`/auth:/auth \
-e "REGISTRY_AUTH=htpasswd" \
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
-e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" \
-p 5000:5000 \
registry:2
Login
docker login localhost:5000
Tes
curl -u <NAME>:<PASSWORD> localhost:5000/v2/_catalog
Rootless Docker
Tujuan rootless docker di sini agar setiap daemon antar user terisolasi. Misal UserA gak akan bisa liat docker UserB, dan sebaliknya
Di Root
sudo loginctl enable-linger <user lain>
sudo apt install uidmap
sudo systemctl disable --now docker.service docker.socket
sudo rm /var/run/docker.sock
Di User Lain
dockerd-rootless-setuptool.sh install
export PATH=/usr/bin:$PATH
export DOCKER_HOST=unix:///run/user/1000/docker.sock
systemctl --user start docker
systemctl --user enable docker
docker run -d -p 8080:80 nginx
Di root lagi
sudo systemctl enable --now docker.service docker.socket