Docker kullanırken, bir servisin host üzerindeki portunu değiştirmek, özellikle farklı projeler arasında port çakışmalarını önlemek ve güvenlikle ilgili gereksinimleri karşılamak için önemlidir.
Bu örnekte 8080 portundaki bir app’i 8000 portuna taşımayı öğreneceksiniz.
Görüldüğü üzere; App şuanda 8080 portunda çalışıyor.
Aşağıdaki kod ile containerlarınızı listeleyin.
docker ps
Container’ın ID’sini alıp, stop komutuyla durdurun.
docker stop 772e4f1804f7
Docker servisini durdurun.
systemctl stop docker
Container’ın volume’unun bulunduğu path’e gidin. Container ID’siyle başlayan klasöre girin.
cd /var/lib/docker/containers/772e4f1804f7ed6e1f9551f7ae70dcdff4ece84caf2be7ff094f95915915c3b8
Klasör içindeki hostconfig.json’ı açın.
vi hostconfig.json
HostPort yazan kısımdaki 8080’i 8000 olarak değiştirip, kaydedip çıkın.
hostconfig.json dosyanızın son hali şu şekilde olmalıdır.
Yine aynı klasör içindeki config.v2.json’ı açın.,
vi config.v2.json
HostPort kısımlarını 8000 olarak değiştirin.
config.v2.json dosyanızın son hali şu şekilde olmalıdır.
Docker containerınızı başlatın.
Browser’da app’i açtığınızda 8000 portunda çalıştığını göreceksiniz.