Fakultas Ilmu Komputer UI

Commit 7beac9d2 authored by Tirta Abimanyu Purnomo's avatar Tirta Abimanyu Purnomo
Browse files

Add post about docker image

parent 61772ca9
---
layout: post
title: Inilah 3 image docker yang paling sering dipakai Abi, nomor 1 bikin melongo!
date: 2019-04-15 20.07.10 +0700
author: abi
---
Docker containerization ada untuk memudahkan kita dalam melakukan deployment maupun development. Karena saya bukan seorang deployer, maka saya lebih sering menggunakan docker untuk mempermudah instalasi dependency bagi project yang sedang saya kembangkan.
Inilah 3 image docker yang paling sering saya gunakan.
<!--more-->
### Redis - [https://hub.docker.com/\_/redis](https://hub.docker.com/_/redis)
Redis merupakan in-memory data structure store yang dapat digunakan sebagai database, cache, dan message broker.
Dengan menggunakan docker, instalasi redis hanya semudah menjalankan command `$ docker run --name some-redis -d redis`
### MySQL - [https://hub.docker.com/\_/mysql](https://hub.docker.com/_/mysql)
MySQL merupakan salah satu relational database management system yang paling banyak digunakan. Berbeda dengan redis yang merupakan database non-relational.
Saya pernah beberapa kali mengalami kendala dalam melakukan instalasi MySQL. Mulai dari versi yang tidak support sampai dependency yang belum terpenuhi. Dengan memakai docker, command yang harus saya jalankan adalah `$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag`
Dimana some-mysql adalah nama yang ingin digunakan pada container, my-secret-pw adalah password untuk user root, dan tag adalah versi MySQL yang ingin digunakan
### Alpine Linux - [https://hub.docker.com/\_/alpine](https://hub.docker.com/_/alpine)
Berbeda dengan kedua image diatas, Alpine Linux merupakan instalasi ubuntu yang hanya memakan storage size sebesar 5MB.
Hal ini membuat Alpine cocok untuk menjadi base image aplikasi apapun karena kita tidak menginstall hal-hal yang tidak kita butuhkan.
Sebagai perbandingan, instalasi Alpine dengan MySQL menggunakan command berikut menghasilkan image dengan ukuran 37MB
```
FROM alpine:3.7
RUN apk add --no-cache mysql-client
ENTRYPOINT ["mysql"]
```
Sedangkan instalasi Ubuntu dengan MySQL menggunakan command berikut menghasilkan image dengan ukuran 145MB
```
FROM ubuntu:18.04
RUN apt-get update \
&& apt-get install -y --no-install-recommends mysql-client \
&& rm -rf /var/lib/apt/lists/*
ENTRYPOINT ["mysql"]
```
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment