Code Monkey home page Code Monkey logo

belajar-docker's Introduction

Belajar Docker

Instalasi di Ubuntu

Semua langkah dilakukan dengan akun root

sudo -i

Update dulu database apt, dan pastikan https bekerja dengan baik

apt-get update
apt-get install apt-transport-https ca-certificates

Add GPG key docker

apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D

Tambahkan repository docker

echo "deb https://apt.dockerproject.org/repo ubuntu-$(lsb_release -cs) main" > /etc/apt/sources.list.d/docker.list

Update lagi database apt

apt-get update

Uninstall docker jadul (kalau ada)

apt-get purge lxc-docker

Pastikan apt-get mengambil dari sumber yang benar

apt-cache policy docker-engine

Install paket linux-image-extra dan apparmor

apt-get install linux-image-extra-$(uname -r) apparmor

Install docker

apt-get install docker-engine

Start docker

service docker start

Test instalasi

docker run hello-world

Instalasi docker-machine

curl -L https://github.com/docker/machine/releases/download/v0.6.0/docker-machine-`uname -s`-`uname -m` > /usr/local/bin/docker-machine && \
chmod +x /usr/local/bin/docker-machine

Instalasi di MacOSX

Instalasi aplikasi docker

brew install docker docker-machine docker-compose

Setup default machine, karena Docker tidak berjalan secara native di MacOSX

docker-machine create --driver virtualbox default

Stop machine (bila perlu)

docker-machine stop default

Start machine

docker-machine start default

Setup environment variable supaya bisa menjalankan Docker Client

eval $(docker-machine env)

Test instalasi (setelah default machine berjalan dan environment variable diset)

docker run hello-world

Setup Docker Machine di Digital Ocean

Membuat Droplet berisi Docker Machine

docker-machine create --driver digitalocean --digitalocean-size 1gb --digitalocean-access-token yaddayaddayadda docker-ocean

Menjalankan Docker Machine

docker-machine start docker-ocean

Setup environment

eval $(docker-machine env docker-ocean)

Menjalankan Java di Docker

cd java-halo-docker
docker build -t halo-java .
docker run -rm halo-java

Menjalankan Jekyll Blog di Docker

cd jekyll-docker
docker build -t website-endy .
docker run -itd -p 80:4000 website-endy

Menjalankan Maven Build di Docker

Build dan start container

cd maven-build-docker
docker build -t maven-builder .
docker run -it --rm maven-builder

Setelah container run, kita akan masuk ke prompt

git clone https://github.com/endymuhardin/belajar-ci.git
cd belajar-ci
mvn clean test jacoco:report
exit

Secara default, container tersebut akan membuat database dengan konfigurasi:

  • nama database : belajar
  • username database : belajar
  • password database : java

Kita bisa mengganti konfigurasi tersebut pada waktu menjalankan container sebagai berikut:

docker run -it --rm \
    -e MYSQL_DATABASE=demo \
    -e MYSQL_USERNAME=coba \
    -e MYSQL_PASSWORD=rahasia \
    maven-builder

Copy File dari Local ke Container

Cari tau dulu container id

docker ps -a

Outputnya

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
599ba5ce1f86        website-endy        "jekyll serve --host="   12 seconds ago      Up 10 seconds       0.0.0.0:4000->4000/tcp   desperate_sinoussi

Copy file coba.txt ke folder /opt di dalam container

docker cp coba.txt desperate_sinoussi:/opt/

Connect ke Docker Container

Buka shell baru di container yang sedang berjalan

docker exec -it desperate_sinoussi bash

Connect ke container yang sedang berjalan, dan melihat apa adanya tampilan di prompt

docker attach desperate_sinoussi

Membuat VPN Server

Jalankan OpenVPN server

docker run --name openvpnserver -d --privileged -p 1194:1194/udp -p 443:443/tcp jpetazzo/dockvpn

Jalankan container sementara untuk mendapatkan konfigurasinya

docker run --rm -it -p 8080:8080 --volumes-from openvpnserver jpetazzo/dockvpn serveconfig

Dia akan mengeluarkan link download konfigurasi, misalnya seperti ini

https://104.131.109.60:8080/

Download konfigurasi

wget --no-check-certificate -O DockerVPN.ovpn https://104.131.109.60:8080/ 

Buka DockerVPN.ovpn dengan aplikasi VPN yang Anda gunakan.

belajar-docker's People

Contributors

endymuhardin avatar

Stargazers

dog avatar Moh Achun Armando avatar Sayyid Shalahuddin avatar Muhammad Hendra avatar

Watchers

 avatar James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.