Hesap Oluşturma
https://aws.amazon.com/tr/ adresine giderek yeni bir aws hesabı oluştur.
Launch instance diyerek yeni bir EC2 instance oluştur.
İsim ver. Amazon machine image seçimini yap. Amazon linux seçtim.
SSH ile erişmek için key-pair ekle. my-key-pair.
HTTP (80) ve HTTPS (443) bağlantı noktalarını aç.
ec2 instance aç. security group içinde 5432 portunda postgresql ekle.
rds instance oluştur. create database (free tier, public access yes, additional configuration : uncheck enable automated backups and encrpytion)
security altında, vpc security default içinde yeni bir kural tanımla. postgresql 5432 tcp ipv4 olsun.
docker desktop’ı aç.
Terminalde ‘docker login’ ile docker hub giriş işlemini yap.
terminalde proje klasörüne git (Dockerfile ekli olmalı)
docker build -t app.jar .
docker tag app.jar docker_hub_hesap_adi/myapp:v1
docker push docker_hub_hesap_adi/myapp:v1 diyerek imajı docker hub’a yükle.
ssh -i /Users/macbook/Documents/my-key-pair.pem ec2-user@13.51.***.** ile linux sunucuya ulaş.
permission denied hatası alırsan: chmod 600 /path/to/your/private/key.pem
sudo yum update (docker yükleme işlemi)
sudo yum install docker
sudo service docker start
sudo systemctl start docker (sunucuda docker çalıştırıldı)
docker pull myusername/myapp:v1
Got permission denied while trying to connect to the Docker daemon socket at hatası alınırsa :
(( sudo usermod -aG docker ec2-user
sudo chown root:docker /var/run/docker.sock
sudo chmod 660 /var/run/docker.sock
sudo service docker restart
groups ec2-user
sudo -i (yeni bir sudo oturumu aç) ))
application.properties içinde server.port değerine bak. 8080 dışında bir değerse instance içinde yeni bir security rule oluştur. (örn: custom tcp -> 8081)
docker run -d -p <server.port>:<server.port> myusername/myapp:v1
docker ps (container id değerini al)
docker logs <container_id> (Her şey yolundaysa şöyle bir log görünecek: Tomcat started on port(s): <server.port> )
EC2 instance details içinde public IPv4 Dns’ini kopyala.
http://<dsnPath>:<server.port>/category/