Onur Dayıbaşı
Cloud And Servers
Published in
2 min readFeb 12, 2016

--

Docker Komutları

Web Uygulamanızı Run Time’da N+1 Şirket İçin Nasıl Hazır Hale Getirebilirsiniz. Web uygulamamızı properties’den dinamik halde okumasını sağlatır hale getirdik (ilgili yazı)

Bu kısımda uygulamamızı nasıl Dockerize edeceğimizden, ve Docker komutlarından bahsedeceğim.

AWS EC2'ya Docker Kurulumu

Docker’da Tomcat Çalıştırma

Docker tomcat image’nın latest versiyonunu localinize indirin.

docker pull tomcat

Docker image’larını listeletin

docker images

Docker image’ini silmek için

docker rmi tomcat:latest

Docker çalıştırmak için

docker run -it -d -p 8888:8080  tomcat:latest

Çalışan Container’ları listeletmek için

docker ps

Çalışan Container durdurmak için

docker stop imageID

Sistemdeki tüm container’ları listeletmek için

docker ps -a

Sistemdeki containerları silmek için

docker rm imageID

Sistemdeki tüm Container’ları durdurmak ve silmek için

docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)

Tomcat Docker’ını çalıştırdık host:8888 portuna gittiğimizde Tomcat ekranını görürüz şimdi yapmamız gereken uygulamamımızı Tomcat ROOT deploy etmek bunun için Tomcat sunucusun girip içerisindeki config altındaki tomcat-user.xml’den manager kısmını aktifleştirmemiz gerekiyor.

Container içerisindeki bash çalıştırıp Container içine girin

docker exec -it 945ab0f9393f bash 

apt-get update’ini yapın ve nano install edin

apt-get update
apt-get install nano

nano’da conf/tomcat-user.xml altından user-roles admin için aktif hale getirip kaydedin.

Docker commit edip , Docker Hub push yapacagiz

docker commit imageID odayibasi/aaa:0.0.1 
docker push odayibasi/aaa:0.0.1

Docker Hub’da ve kendi local imajlarımızda yeni versiyon bulunur. Bu sefer kendi image’mızı Admin konfigurasyonunu yapmış olduğumuz versiyonu çalıştırıyoruz.

docker run -it -d -p 8888:8080 --name myapp  odayibasi/aaa:0.0.1 

HOST:8888/manager altından ROOT.war web uygulamamızı Container içerisine atıp yeni versiyon ile tekrar commit ve push yapın. Burada — name kullanmanın ilerde bizim için bir avantajı olacak Bash Script yazarken işlemlerimizi imageID üzerinden değilde bu işim myapp üzerinden gerçekleştirebileceğiz.

-e parametesi ile Container’ın environment variable olarak istediğiniz parametreyi geçirebilirsiniz.

docker run -it -e "icsname=myapp" -d -p 8888:8080 --name myapp  odayibasi/aaa:0.0.1

Bu parametre Container içerisinden bash export dediğimizde görebileceğimiz parametrelerdir.

Docker mevcut durumu ile restart etmek istiyorsanız

docker restart imageID 

Bu kısımda genel Docker komutlarından bahsettim. Bir sonraki konuda Bash Script ile bu işlemleri nasıl otomatikleştirebildiğimiz anlatacağım.

Okumaya Devam Et 😃

Bu yazının devamı veya yazı grubundaki diğer yazılara erişmek için bu linke tıklayabilirsiniz.

--

--