Mengaktifkan Service SSH di Docker Container

Mengaktifkan Service SSH di Docker Container. Di tutorial ini saya akan sharing sedikit mengenai bagaimana cara mengakses docker container melalui protokol SSH. Saya sendiri memang kurang familiar dengan docker sehingga tutorial ini juga saya jadikan sebagai catatan pribadi saja.

Di tutorial ini saya menggunakan base image Ubuntu 20.04 untuk containernya.

pertama, buat Dockerfile dengan isi berikut:
FROM ubuntu:focal

RUN apt-get update && apt-get install -y openssh-server
RUN mkdir /var/run/sshd
RUN echo 'root:securesshpassword' | chpasswd
RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config

# SSH login fix. Otherwise user is kicked off after login
RUN sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd

ENV NOTVISIBLE "in users profile"
RUN echo "export VISIBLE=now" >> /etc/profile

EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]
Sesuaikan sendiri untuk value securesshpassword dengan password user yang kalian kehendaki. Selanjutnya build image baru dari Dockerfile diatas.
docker build -t ubuntu_ssh .

Lanjut jalankan perintah dibawah ini utnuk menjalankan container baru.
docker run -d -P --name ubuntu-ssh --hostname ubuntu-ssh ubuntu_ssh
Jika sudah oke, lanjut jalankan perintah
docker port ubuntu-ssh 22
Perintah diatas untuk memeriksa di port berapakah service SSH terekspos.

Selanjutnya kalian bisa akses container melalui ssh dengan password yang sudah ditentukan diatas.

Oke mungkin sekian tutorial singkat kali ini, semoga bermanfaat. Jika ada yang ingin ditanyakan silahkan tinggalkan komentar.