Bu rehberde, AWS EC2 üzerinde Dockerfile kullanarak WordPress kurulumu ve bir subdomain (test2.mustafayenisehirli.me) ile siteyi nasıl bağlayabileceğinizi adım adım açıklıyorum
.
Adım 1: AWS EC2 Üzerinde Yeni Sunucu Oluşturma
İlk olarak, yeni bir EC2 instance oluşturarak WordPress’i çalıştıracağız.
- AWS Management Console‘da EC2 Dashboard‘a gidin.
- Launch Instance‘a tıklayın ve yeni bir instance oluşturun:
- Name:
WordPress Test2 Instance
(isteğe bağlı). - AMI: Ubuntu 24.04 LTS (veya uygun bir Ubuntu sürümü).
- Instance Type:
t3.micro
(ücretsiz katman için). - Key Pair: Daha önce oluşturduğunuz key pair’i seçin veya yeni bir key pair oluşturun.
- Name:
- Güvenlik Grubu‘nda şu ayarları yapın:
- HTTP (80 numaralı port): Herkes (0.0.0.0/0) için açın.
- SSH (22 numaralı port): Kendi IP adresinize kısıtlayın.
- Launch diyerek yeni EC2 instance’ınızı başlatın.
- Sunucu başlatıldıktan sonra, Public IPv4 Address‘ini not alın (subdomain yönlendirmesi için gerekli olacak).
Adım 2: Cloudflare Üzerinde Yeni Subdomain Oluşturma
Yeni oluşturduğumuz EC2 instance’a subdomain ekleyelim.
- Cloudflare DNS Ayarlarına Gidin.
- Yeni A kaydı ekleyin:
- Type:
A
- Name:
test2
- IPv4 Address: Yeni EC2 instance IP adresiniz (örneğin: 16.171.146.173).
- Proxy status:
DNS only
(şimdilik SSL kurmadan kullanacağız).
- Type:
Bu adım, subdomain’inizi EC2 instance IP adresine yönlendirecektir.
Adım 3: Yeni EC2 Sunucusuna SSH ile Bağlanma
Terminal üzerinden yeni oluşturduğunuz EC2 instance’a SSH ile bağlanın:
ssh -i ~/Downloads/your-key.pem ubuntu@your-new-ec2-ip-address
Adım 4: Docker Kurulumu
Docker’ı yeni sunucunuza kurun:
- Paketleri güncelleyin:
sudo apt update
2.Docker bağımlılıklarını yükleyin:
sudo apt install apt-transport-https ca-certificates curl software-properties-common
3. Docker’ı yükleyin:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install docker-ce
4.Docker’ı başlatın ve servisi etkinleştirin:
sudo systemctl start docker
sudo systemctl enable docker
Adım 5: MySQL için Dockerfile ile Yapılandırma
Bu kez MySQL’i Dockerfile ile yapılandıracağız.
- MySQL için proje klasörü oluşturun:
mkdir mysql-docker
cd mysql-docker
2. Dockerfile oluşturun:
touch Dockerfile
3. Dockerfile içeriğini ekleyin:
FROM mysql:5.7
ENV MYSQL_ROOT_PASSWORD=root_password
ENV MYSQL_DATABASE=wordpress
ENV MYSQL_USER=wordpress
ENV MYSQL_PASSWORD=wordpress_password
EXPOSE 3306
4.Docker imajını oluşturun:
docker build -t custom-mysql .
5.MySQL konteynerini çalıştırın:
docker run --name mysql-container -d custom-mysql
Adım 6: WordPress İçin Dockerfile Oluşturma
- WordPress için yeni bir klasör oluşturun:
mkdir wordpress-docker
cd wordpress-docker
2.Dockerfile oluşturun:
touch Dockerfile
3.Dockerfile içeriğini ekleyin:
FROM wordpress:latest
ENV WORDPRESS_DB_HOST=mysql-container:3306ENV WORDPRESS_DB_USER=wordpressENV WORDPRESS_DB_PASSWORD=wordpress_passwordENV WORDPRESS_DB_NAME=wordpress
EXPOSE 80
4.Docker imajını oluşturun:
docker build -t custom-wordpress .
5.WordPress konteynerini çalıştırın:
docker run --name wordpress-container --link mysql-container:mysql -p 80:80 -d custom-wordpress
Adım 7: EC2 Güvenlik Grupları Ayarlarını Kontrol Etme
EC2 instance’a gelen HTTP trafiğini kabul edebilmesi için 80 numaralı portu açmamız gerekiyor:
- AWS EC2 Dashboard’dan Security Groups (Güvenlik Grupları) kısmına gidin.
- İlgili güvenlik grubunu seçin ve Inbound Rules kısmına şu kuralı ekleyin:
- Type: HTTP
- Protocol: TCP
- Port Range: 80
- Source: Anywhere (0.0.0.0/0)
Bu adım, dış dünyadan gelen isteklerin 80 numaralı porttan kabul edilmesini sağlar.
Tüm ayarlar tamamlandıktan sonra, tarayıcınızda http://test2.mustafayenisehirli.me
adresine giderek WordPress kurulum ekranına ulaşabilirsiniz.
Adım 9: WordPress Kurulumunu Tamamlama
- Veritabanı Bilgileri:
- Veritabanı Adı:
wordpress
- Kullanıcı Adı:
wordpress
- Parola:
wordpress_password
- Veritabanı Sunucusu:
mysql-container
- Veritabanı Adı:
Bir yanıt yazın