Docker Container’da SSH Servisi Nasıl Aktif Hale Getirilir?

Docker container mimarisinde bazı durumlarda SSH erişimine ihtiyaç olabilir. Hazırlamış olduğunuz Linux tabanlı Dockerfile, SSH servisini içermiyor olabilir ve siz docker imajınızı çoktan run etmiş ve kullanıyor olabilirsiniz, böyle bir durumda tekrar Dockerfile hazırlamaktansa, docker konteynırımıza exec olarak SSH servisinin kurulumunu yapıp compose dosyamızda ssh portuna yönlendirme yapıp kullanabiliriz.

Bu durumu basic bir nginx konteynırı üzerinde açıklayalım,

Aşağıdaki kod bloklarınızı docker-compose.yml dosyanıza yapıştırarak, basic bir nginx imajı ayaklandırabilirsiniz.

version: ‘3’

services:

  web:

    image: nginx:latest

    ports:

      – “80:80”

      – “2222:22” //ssh portu olarak 2222 belirledik, requestimizi 22 portuna yani ssh servisine forward edicek.

Image 25

Compose dosyamızda network ayarı yapmadığımız için çalışma başlangıcımızda kurmuş olduğumuz portainer üzerinden (kurulum yapmayan varsa buraya tıklayarak portainer makalesini inceleyebilir) network’ ümüzü ‘bridge’ mode a çekelim.

Image 24

Daha sonra portainer üzerinden konteynırımıza console yapıp hızlı bir şekilde openssh-server kurulumunu tamamlayabiliriz.

Image 26

apt update && apt install openssh-server

Image 27

Kurulum sonrasında nano /etc/ssh/sshd_config dosyasını açarak;

PermitRootLogin Yes -> Ekleyelim kaydedip çıkalım.

service ssh restart -> SSH servisini restart edelim.

Şimdi host bilgisayarımızdan 2222 olarak belirlediğimiz porta ssh atarak konteynırımıza ssh ile ulaşabiliriz.

Image 28 1024x102

Not: SSH servisi konteynır üzerindeki çalışmaları kolaylaştırmak için geliştirme ortamında kullanılabilir fakat ssh servisinin konteynır üzerinde açık olması önerilmemektedir.

Faydalı Olması Dileklerimle,

Yorum bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir