Disini penulis ingin mendokumentasi bagaimana tahapan “Quickstart: Run SQL Server Linux container images with Docker” yang diposting oleh microsoft. ada beberapa tahapan yang dapat digunakan seperti pada ubuntu maupun docker. penulis akan mencoba merekronstruksi bash command yang akan dijalankan untuk sampai pada berjalannya SQL Server


Instalasi Docker

Penulis akan menggunakan pendekatan docker untuk mempermudah konfigurasi dalam melakukan instalasi SQL Server. pertama kita harus menginstall docker. penulis menggunakan os linux (parrot os), pembaca dapat menyesuaikan kebutuhan os pembaca. terdapat kendala dalam melakukan instalasi docker pada linux parrot os. sehingga diperlukan workaround agar dapat terinstallnya docker, penulis menggunakan snap untuk menginstall docker. apa itu snap? Snap adalah aplikasi paket manager mirip seperti apt. dapat dilihat pada tautan berikut https://www.newbienote.com/2022/11/apa-itu-snap.html. lalu bagaimana dengan instalasi docker? pertama kita harus menginstall snap terlebih dahulu 

sudo apt update
sudo apt install snapd

lalu kita install docker menggunakan snap

sudo snap install docker

setelah terinstall kita dapat coba menjalankan hello-world containter yang sudah dimiliki oleh docker. caranya sebagai berikut

docker run hello-world

maka system akan memunculkan seperti ini

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

hore! kita sudah berhasil menginstall docker


Instalasi SQL Server

setelah kita menginstal docker, kita dapat lanjut untuk menginstall SQL Server. penulis akan menggunakan SQL Server 2017 sebagai contoh. pertama kita akan mengambil image SQL Server 2017 dengan command berikut

docker pull mcr.microsoft.com/mssql/server:2017-latest

Setelah itu untuk menjalankan docker image tersebut kita dapat menjalankan command berikut

docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<YourStrong@Passw0rd>" -p 1433:1433 --name sql1 --hostname sql1 -d mcr.microsoft.com/mssql/server:2017-latest

perlu dicatat <YourStrong@Passw0rd> harus di ubah ya. sedangkan sql1 pada –name dan –hostname dapat disesuaikan oleh pembaca. setelah dijalankan, dapat menjalankan command berikut

docker ps -a

maka akan terlihat tabel untuk memastikan bahwa docker sudah membuat container berdasarkan image diatas

CONTAINER ID   IMAGE                                        COMMAND                    CREATED         STATUS         PORTS                                       NAMES
d4a1999ef83e   mcr.microsoft.com/mssql/server:2017-latest   "/opt/mssql/bin/perm..."   2 minutes ago   Up 2 minutes   0.0.0.0:1433->1433/tcp, :::1433->1433/tcp   sql1

perlu dipahami bahwa terdapat STATUS, akan memiliki beberapa value seperti “UP” maupun “Exit”. jika dalam waktu tertentu containter tersebut memunculkan info Exit maka pembaca dapat melihat log dengan menjalankan code dibawah ini

docker logs d4a1999ef83e

hasil pada command tersebut akan memunculkan log pada docker. seperti dibawah ini

ERROR: Unable to set system administrator password: Password validation failed. The password does not meet SQL Server password policy requirements because it is not complex enough. The password must be at least 8 characters long and contain characters from three of the following four sets: Uppercase letters, Lowercase letters, Base 10 digits, and Symbols..

dari error tersebut menunjukan bahwa terdapat policy pada SqlServer sehingga harus disesuaikan pada saat menjalankan docker run. kemudian apabila sudah dalam kondisi UP, maka kita dapat menjalankan command berikut

docker exec -t sql1 cat /var/opt/mssql/log/errorlog | grep connection

apabila setelah menjalankan command tersebut muncul ‘SQL Server is now ready for client connections. This is an informational message; no user action is required.’ maka SQL Server siap digunakan

 

Ref
https://learn.microsoft.com/en-us/sql/linux/quickstart-install-connect-docker?view=sql-server-2017&pivots=cs1-cmd#requirements
https://docs.docker.com/desktop/install/ubuntu/
https://snapcraft.io/docs/installing-snap-on-ubuntu
https://snapcraft.io/install/docker/ubuntu
Categories: Tutorial

Avatar photo

Rinov

Suka nyoba nyoba