Dosen Pengampu :
Anak Agung Ketut Agung Cahyawan Wiranatha, ST, MT
Kelas : C
Disusun Oleh:
Evangelika Pirade (2105551096)
DAFTAR ISI................................................................................................................................................ 2
INSTALASI SERVER LINUX .................................................................................................................. 4
1. Instalasi Server Linux..................................................................................................................... 4
2. Pemilihan Bahasa dan Region ....................................................................................................... 5
3. Konfigurasi Root Password............................................................................................................ 6
4. Konfigurasi User dan Password .................................................................................................... 7
5. Konfigurasi Local Time .................................................................................................................. 9
6. Konfigurasi Partisi Block Storage ............................................................................................... 10
7. Instalasi .......................................................................................................................................... 12
8. Konfigurasi Repository................................................................................................................. 13
9. Konfigurasi Repository dan Pemilihan Package Dasar ............................................................ 14
10. Download dan Instalasi Package ............................................................................................. 15
11. Instalasi Bootloader .................................................................................................................. 16
SETTING FIREWALL ........................................................................................................................... 17
1. Firewall .......................................................................................................................................... 17
2. Setting firewall dengan iptables ................................................................................................... 17
3. Memblokir akses port ................................................................................................................... 18
4. Blokir port 80 http menggunakan iptables ................................................................................. 19
5. Memblokir koneksi masuk IP menggunakan Iptables ............................................................. 19
6. Setting firewall dengan firewalld ................................................................................................. 19
7. Setting Firewall dengan Firewalld............................................................................................... 21
8. Setting firewall dengan rich rules ................................................................................................ 22
DOCKER DASAR .................................................................................................................................... 23
1. Definisi Docker .............................................................................................................................. 23
2. Menginstal Docker ........................................................................................................................ 23
3. Docker Image ................................................................................................................................ 23
4. Container log ................................................................................................................................. 25
5. Container Exec .............................................................................................................................. 25
2
6. Container Port ............................................................................................................................... 26
7. Container Environtment Variable .............................................................................................. 27
8. Container Stats .............................................................................................................................. 28
9. Docker Volume .............................................................................................................................. 28
10. Docker Network ........................................................................................................................ 29
11. Inspect ........................................................................................................................................ 32
12. Prune .......................................................................................................................................... 33
13. Dockerfiles ................................................................................................................................. 34
DOCKER COMPOSE .............................................................................................................................. 36
1. Docker Compose ........................................................................................................................... 36
2. Docker Engine ............................................................................................................................... 36
3
INSTALASI SERVER LINUX
Untuk menghemat memori untuk menggunakan linux, sebaiknya dalam instalasi server
menggunakan mode CLI atau text. Berikut merupakan langkah-langkah dalam melalukan
installasi server linux dengan Debian.
1. Instalasi Server Linux
4
2. Pemilihan Bahasa dan Region
5
3. Konfigurasi Root Password
6
4. Konfigurasi User dan Password
7
8
5. Konfigurasi Local Time
9
6. Konfigurasi Partisi Block Storage
10
11
7. Instalasi
12
8. Konfigurasi Repository
13
9. Konfigurasi Repository dan Pemilihan Package Dasar
14
10. Download dan Instalasi Package
15
11. Instalasi Bootloader
16
SETTING FIREWALL
1. Firewall
Firewall merupakan sebuah peralatan dari komputer dengan perangkat keras atau perangkat lunak
yang mengurutkan paket jaringan yang masuk maupun keluar, dimana firewall hanya mengizinkan
lewatnya paket yang sesuai dengan kondisi standar tertentu.
Firewall berfungsi untuk menyaring atau membatasi akses ke beberapa layanan. Selain itu firewall
memiliki peran untuk memfilter atau membatasi koneksi oleh perangkat lunak rentan virus atau
buruk yang dapat diinstal oleh pengguna.
iptables bekerja dengan membandingkan lalu lintas jaringan dengan seperangkat aturan yang telah
ditentukan. Jadi, semua paket dalam lalu lintas jaringan akan diperiksa.
17
Gambar diatas merupakan bebera perintah dasar dari iptables, iptables -A INPUT -
p tcp -–dport 80 -j ACCEPT, iptables -A INPUT -p tcp -–dport 80 -
j ACCEPT, merupakan perintah untuk membuka port masuk yaitu port 80 http dan 2 ssh.
Demonstrasi perintah lain adalah sebagai berikut.
18
4. Blokir port 80 http menggunakan iptables
Untuk memblokir port perintah yang diperlukan adalah iptables -A INPUT -p tcp
-–dport 80 -j DROP untuk memblokir port masuk dan iptables -A OUTPUT -p tcp -
–dport 80 -j DROP untuk memblokir port keluar.
a. Instalasi firewalld
19
Firewalld diinstal dengan menggunakan perintah apt install firewalld, jika user
biasa perintah yang digunakan adalah sudo apt install firewalld.
Setelah firewalld diinstal, cek status firewalld dengan cara systemctl status
firewalld, pada gambar diatas dapat dilihat bahwa status firewalld adalah active (running)
yang berarti firewalld telah berjalan.
c. Memeriksa zone
20
Untuk melihat zone perintah firewall-cmd –get-default-zone, pada gambar diatas
default zone adalah public. Dimana zone public Menolak lalu lintas masuk kecuali yang terkait
dengan lalu lintas keluar atau cocok dengan ssh atau dhcpv6-client serta servis yang di definisi
pada zona ini. Merupakan zona default dari interface baru. Dapat dilihat pada gambar diatas
firewall tidak memiliki port dan bagian service hanya terdapat ssh. Setting firewall dengan
firewalld dapat dilihat dari tahapan berikut ini.
Pada gambar diatas dilakukan penambahan port pada zone public dengan perintah firewall-cmd
–zone=public –add-port=80/tcp.
21
Pada gambar diatas dilakukan penambahan service pada zone public dengan perintah firewall-
cmd –zone=public –add-service=http. Lalu dilakukan reload untuk mereload
pengaturan.
22
DOCKER DASAR
1. Definisi Docker
Docker adalah suatu yang memudahkan programmer untuk membuat, menguji,
mengembangkan, serta mendeploy aplikasi secara terisolisi di dalam sebuah wadah yang disebut
container.
2. Menginstal Docker
Sebelum meng-install docker, ada beberapa tahapan yang harus dilakukan. Pertama,
melakukan update package os dari server.
Kedua, meng-install beberapa package yang berfungsi untuk memperbolehkan apt memanfaatkan
HTTPS
3. Docker Image
Sebelum menjalankan suatu aplikasi di docker, kita harus memeriksa apakah kita sudah
memiliki docker image atau belum. Di bawah ini merupakan perintah untuk melihat apakah kita
sudah memiliki Docker Image atau belum.
Docker container ls -a, berfungsi untuk melihat keseluruhan container yang sedang dimanfaatkan
maupun yang tidak dimanfaatkan.
Docker container ls, berfungsi untuk melihat hanya keseluruhan container yang sedang berjalan.
23
Sebelum menggunakan docker image, maka harus men-download dengan perintah di bawah ini.
Jika sudah membuat docker container, maka docker image tidak bisa lagi dihapus. Untuk
menjalankan container yang telah dibuat sebelumnya, dapat dilakukan dengan menggunakan
perintah di bawah ini. Untuk melihat jika container berjalan, kita dapat menggunakan perintah
docker ls -a .
Jika tidak ingin lagi menggunakan container yang telah dibikin, maka container dapat dihentikan
dengan perintah di bawah ini.
24
4. Container log
Ketika menggunakan container, akan terdapat beberapa masalah yang terdaapat pada
container. Detail kejadian dapat dilihat untuk memudahkan pengguna saat terjadi masalah. Berikut
merupakan dua perintah yang dapat digunakan.
a. Menampilkan Log yang Sudah Ada
5. Container Exec
Jika ingin masuk ke dalam container, pengguna dapat mengeksekusi program bash script
pada container dengan bantuan container exec.
25
-I merupakan argument interaktif, menjaga agar input tetap aktif, -t merupakan argument
untuk alokasi pseudo-TTY (terminal akses), dan /bin/bash merupakan contoh kode program yang
terdapat pada container.
6. Container Port
Port forwarding dapat dilakukan pada Docker yaitu untuk meneruskan sebuah port yang
memiliki sistem host ke dalam docker container. Cara ini dilakukan jika ingin mengakses port
yang berada di container ke luar melalui sistem hostnya.
Jika perintah di atas telah dijalankan, maka dapat diperiksa dengan menggunakan google seperti
gambar di bawah,
26
7. Container Environtment Variable
Environment variable merupakan salah satu teknik agar konfigurasi dapat diubah secara
dinamis. Environment variabel dapat digunakan untuk mengubah konfigurasi tanpa harus
mengubah kode aplikasinya.
27
8. Container Stats
Docker dapat melihat penggunaan resource dari tiap container yang sedang berjalan.
Berikut merupakan perintah yang dapat digunakan untuk menjalankan container stats.
9. Docker Volume
Docker volume dapat digunakan sebagai storage untuk menyimpan data dan data tersebut
dapat diatur oleh docker.
28
10. Docker Network
Salah satu fitur pada docker dapat dimanfaatkan untuk membuat jaringan. Dengan docker
network, kita dapat menyambungkan koneksi antar container dalam satu network yang sama.
Container yang berada pada satu network tersebut dapat saling berkomunikasi.
29
Gambar di atas menggunakan driver bridge, yaitu driver yang digunakan untuk membuat network
secara virtual yang memungkinkan container terhubung pada bridge network yang dapat saling
berkomunikasi.
30
Di bawah ini merupakan proses menjalankan perintah yang sudah diatur pada gambar di atas
yang berfungsi untuk menjalankan container agar pengaturannya berhasil.
31
11. Inspect
Setelah mengunduh image, atau membuat network, volume, dan container, dapat dilihat
detail dari tiap hal tersebut dengan menggunakan inspect.
32
12. Prune
Saat menggunakan docker, prune dapat digunakan untuk membersihkan hal-hal yang tidak
digunakan lagi oleh Docker, seperti container yang sudah di stop, image dan volume yang tidak
digunakan lagi oleh container.
33
Jika sudah selesai menggunakan fitus prune, maka prune harus dihentikan dengan menggunakan
perintah di bawah ini.
13. Dockerfiles
Docker dapat membuat image dengan otomatis dengan membaca instruksi yang terdapat
pada Dockerfiles. Dockerfiles merupakan dokumen teks yang memiliki perintah untuk
membangun image. Dengan menggunakan perintah docker build, kita dapat menjalankan beberapa
instruksi baris perintah dengan berurutan.
34
35
DOCKER COMPOSE
1. Docker Compose
Docker compose merupakan suatu alat untuk mendefinisikan dan menjalankan aplikasi
Docker multi-kontainer. Penjelasan yang lebih sederhana yaitu seperti mengidentifikasi semua
Dockerfiles untuk tiap aplikasi layanan dalam file YAML “docker-compose-file” dan membuat
dan memulai semua layanan yang didefinisikan dalam file YAML dengan satu perintah. Sintaks
yang digunakan pun sangat sederhana, mirip dengan argunmen pada saat menjalankan Dockerfile.
2. Docker Engine
Docker engine merupakan teknologi container open source yang terdiri dari server Docker,
client, dan APL. Software Docker merupakan Docker client, tetapi ditulis dengan huruf kecil
sehingga terkadang dibingungkan oleh Docker Client.
2.1. Tahap awal
Tahap awal pada pembuatan Docker Compose yaitu membuat file terlebih dahulu yang
berfungsi untuk menjadi tempat melakukan konfigurasi docker compose. Lalu kita masuk ke
dalam file tersebut menggunakan perintah di bawah ini
36
2.2. Nano docker-compose.yaml
Kita akan membuat file yang berisikan konfigurasi dari docker compose yang akan dibuat.
Docker-compose.yaml merupakan file konfigurasi pada docker compose. Hal ini berfungsi untuk
menyebarkan, menggabungkan, dan mengonfigurasi beberapa kontainer docker secara bersamaan.
Jadi dapat diatur tiga wadah buruh pelabuhan dengan Apche2, PHP, dan MySQL. Berikut
merupakan sintaks untuk masuk ke dalam konfigurasi dari docker kompose.
Setelah melakukan konfigurasipada yaml, maka dapay dimulai ulang semua layanan yang
ditentukan pada konfigurasi yang telah dibuat sebelumnya. Berikut merupakan isi dari konfigurasi
dari konfigurasi docker-compose.yaml yang telah dibuat.
37
Pada gambar di atas, dapat dilihat konfigurasi yang dilakukan berisi image, yaitu
mysql:latest, dengan nama kontainer evangelikamysql, lalu terdapat password, database, user,
serta password yang berfungsi untuk login pada phpMyAdmin nantinya. Pada gambar juga
terdapat ports yang digunakan serta nama volume yang digunakan.
38
Pada gambar di atas, terdapat syarat yang harus diisi untuk login yaitu server, username,
serta password. Untuk mengisi syarat tersebut kita dapat melihat pada konfigurasi yang telah kita
buat, Pada server yang digunakan adalah db, username yang digunakan adalah Evangelika, dan
passwordnya adalah evangelika. Apabila sudah terisi, maka kita dapat masuk ke dalam
phpMyAdmin sebagai berikut.
39