Sabtu, 28 Januari 2017

Docker

Docker Toolbox

Docker serndiri merupakan sebuah aplikasi yang memiliki fungsi sebagai wadah (biasanya orang-orang nyebutnya container), yang memungkinkan para developer untuk melakukan memasukkan sebuah software secara lengkap beserta semua hal lainnya yang dibutuhkan oleh software tersebut dapat berfungsi. Pengaturan software beserta file dan hal pendukung lainnya akan menjadi sebuah Image (istilah oleh docker). nah Kemudian sebuah instan dari Image tersebut kemudian disebut Container.

Istilah pada Docker:

Docker Image
Docker image merupakan template dasar untuk docker container. Image ini berisi sistem oeprasi ataupun aplikasi yang sudah selesai. Docker image ini berfungsi untuk menjalankan container.

Docker Container
Docker container merupakan sebuah image yang bersifat read-write. Pada setiap perubahan yang disimpan pada containerakan menyebabkan terbentuknya layer baru di atas image. Developer dapat melakukan instalasi aplikasi didalamnya dan melakukan penyimpanan.

Docker Registries
Docker registries merupakan tempat penyimpanan (public atau private) di mana developer dapat mengunggah dan mengunduh image. Docker registries bersifat public disebut dengan Docker Hub. Disini, terdapat banyak image yang sudah dibuat atau image yang lain.

Dockerfile
Dockerfile merupakan script yang yang berisi dari serangkaian perintah yang akan dieksekusi secara otomatis dan berurutan untuk membuat sebuah image.
Dengan Docker, proses akan sangat ringan dan cepat dibandingkan dengan virtual mesin yang berbasis hypervisor. Besarnyaoverhead, hanya sebesar layanan aplikasi yang dijalankan pada container itu sendiri. Selain itu, para developer dapat menjalankan banyak container dalam mesin host.

Instalasi Docker di CentOS 7 x64:
Untuk instlasi pada OS yang lain anda dapat mengacu ke dokumentasi instalasi disini.
Sampai tulisan ini ditulis versi terakhir adalah docker versi 1.6.0. Docker membutuhkan instalasi pada mesin 64 bit, syarat lainnya adalah versi minimal kernel di centos adalah menggunakan kernel versi minimum 3.10, untuk mengeceknya bisa anda ketikkan perintah
uname -r
uname -r

Langkah pertama update paket di centos
yum update
Download paket docker RPM untuk centos 7
curl -O -sSL https://get.docker.com/rpm/1.7.0/centos-7/RPMS/x86_64/docker-engine-1.7.0-1.el7.centos.x86_64.rpm
Install paket dockernya
yum localinstall --nogpgcheck docker-engine-1.7.0-1.el7.centos.x86_64.rpm
Start docker service
systemctl start docker.service
Set docker agar dijalankan pada saat boot
systemctl enable docker.service
Verify dan cek statusnya bisa dengan perintah
systemctl status docker.service

Docker telah terinstall, selanjutnya kita bisa mulai membuat sebuah container dengan mendownload docker images di Docker Registry yang merupakan tempat penyimpanan public atau privat untuk mendownload dan mengupload images.

Contoh kita akan mendownload docker image centos
Untuk mencari image
docker search centos
Setelah ketemu nama image yang diinginkan download/pull misal dengan perintah
docker pull centos
Tunggu hingga selesai mendownload imagenya,
Test dengan jalankan perintah misal
docker run hello-world

Kemudian coba jalankan docker container, dan masuk ke shellnya
docker run -i -t centos /bin/bash
Ketik “exit” untuk keluar, kemudian kita coba cek containernya dengan perintah
docker ps -a


Akan tampak 2 nama container, karena kita me-run 2 perintah diatas, coba kembali jalankan perintah docker run -i -t centos /bin/bash
masuk ke dalam shell lagi, lalu coba buat sebuah file atau perubahan lainnya dan simpan, kemudian anda coba keluar dengan “exit”.
Lihat lagi daftar containernya
docker ps -a
hasilnya akan terlihat

Ada tambahan 1 container lagi berarti jumlahnya ada 3, jadi setiap kita melakukan perubahan image otomatis docker akan membuat sebuah container baru dengan otomatis juga menambahkan nama dan ID baru. Kita juga dapat kembali ke container yang telah kita lakukan perubahan sebelumnya dan meneruskannya dengan perintah
docker start [container ID]
docker attach [container ID]
Berikut adalah beberapa perintah lainnya pada Docker :
  
Cek info versi docker
docker info
Mengunduh images dari Docker hub
docker pull [image name]
Menghapus image dalam docker
docker rmi [image ID]
Melihat daftar image
docker images
Membuat container baru
docker run [image name] [command to run]
Menyetop container
docker stop [container ID]
Start container
docker start [container ID]
Melihat daftar kontainer
docker ps
Menghapus kontainer yang ada
docker rm [container ID]
Melakukan commit perubahan pada images
docker commit [container ID] [image name]

Sekian terimakasih.

Kamis, 26 Januari 2017

Cara Menggunakan Virtual Box

Cara Menggunakan Virtual Box

VirtualBox sendiri adalah perangkat lunak virtualisasi yang dimilik Oracle, yang dapat digunakan untuk mengeksekusi sistem operasi "tambahan" di dalam sistem operasi "utama". Sebagai contoh, jika seseorang mempunyai sistem operasi MS Windows yang terpasang di komputernya, maka seseorang tersebut dapat pula menjalankan sistem operasi lain yang diinginkan di dalam sistem operasi MS Windows.

Cara pakainya:

1. Install Virtual Box nya dan install seperti biasa

2. Setelah selesai jalankan aplikasi VirtualBox yang ada di desktop untuk memulai pembuatan mesin virtual baru.


3. Tekan tombol "New" atau pilih menu Machine, kemudian item New untuk membuat guest machine baru. Shortcut Ctrl-N (tekan tombol fungsi kontrol bersamaan dengan menekan huruf N pada keyboard) juga dapat digunakan untuk pembuatan mesin virtual baru. Selanjutnya muncul jendela pop-up Create Virtual Machine, yang berguna untuk label dan jenis serta versi sistem operasi guest yang akan diinstall.

4. Pada isian Name, tulis nama sistem operasi guest yang akan diinstall, dalam hal ini adalah Windows 7. Nama sistem operasi guest juga digunakan sebagai nama folder untuk lokasi file sistem operasi guest (pada Windows 7 lokasi default folder mesin virtual adalah C:\Users\Account-Login\VirtualBox VMs). Pada bagian Type, pilih Windows 7 dan di bagian Version, sesuaikan versi Windows 7 yang akan diinstall, apakah versi 32-bit atau versi 64-bit. Selanjutnya tekan tombol Next.


5. Layar selanjutnya pengaturan jumlah memori yang akan dialokasikan untuk mesin virtual dalam satuan Megabyte. Secara otomatis, VirtualBox akan memberikan saran alokasi memori untuk sistem operasi Windows 7 yang akan diinstall adalah 192 MB.


6. Jika ingin melakukan perubahan, isian maksimal ditunjukan oleh indikator warna hijau atau setengah dari total jumlah memori komputer yang tersedia, agar sistem operasi utama tidak menjadi terganggu. Selanjutnya tekan tombol Next.


7. Bagian selanjutnya adalah pengaturan media penyimpanan (hard disk) yang akan digunakan mesin virtual Windows 7. VirtualBox memberikan rekomendasi kapasitas hard disk virtual yang akan dibuat berdasarkan jenis sistem operasi yang ditentukan sebelumnya. Kapasitas hard disk yang disarankan tersebut dapat kita ganti sesuai kebutuhan kita.

Dalam pengaturan hard disk virtual, tersedia 3 (tiga) opsi yang dapat digunakan:
-Do not add a virtual hard drive
Opsi ini digunakan untuk pengguna tingkat mahir, karena hard disk virtual akan dibuat dalam pengaturan terpisah dan setelah pembuatan mesin virtual Windows 7 selesai dilakukan.
-Create a virtual hard drive now
Opsi ini digunakan untuk membuat hard disk virtual baru bersamaan dengan pembuatan mesin virtual Windows 7.
-Use an existing virtual hard drive
Gunakan opsi ini untuk memilih hard disk virtual yang sudah ada.
Pilih opsi Create a virtual hard drive now karena kita akan langsung membuat hard disk virtual untuk mesin virtual Windows 7. Kemudian tekan tombol Create.


8. Layar selanjutnya untuk menentukan jenis (ekstensi) file hard disk virtual yang akan dibuat. Standarnya VirtualBox menggunakan format file VDI (VirtualBox Disk Image) untuk penyimpanan hard disk virtual. /VirtualBox juga mendukung pembacaan jenis file dari aplikasi-aplikasi virtual lainnya, seperti VMDK (Virtual Machine Disk) yang merupakan format dari aplikasi virtual Vmware, VHD (Virtual Hard Disk) format dari Microsoft Virtual PC, HDD (Parallels Hard Disk) format aplikasi virtual dari Parallels atau format dari aplikasi virtual QEMU.


9. Setelah menekan tombol Next, pengaturan selanjutnya untuk menentukan "bagaimana" hard disk virtual yang akan dibuat tersebut disimpan pada hard disk fisik (hard disk host).
-Dynamically allocated,
Artinya kapasitas hard disk fisik akan digunakan berdasarkan berapa kapasitas hard disk virtual sudah terpakai dan tidak berdasarkan berapa ukuran hard disk virtual ditentukan. Kapasitas hard disk virtual akan dibatasi berdasarkan ukuran yang telah ditentukan.
-Fixed size,
Artinya kapasitas hard disk fisik akan digunakan berdasarkan ukuran kapasitas hard disk virtual dibuat, walaupun kapasitas hard disk virtual tersebut masih kosong atau belum digunakan.
Disarankan untuk memilih opsi Dynamically allocated, kemudian tekan tombol Next.


10. Layar selanjutnya berguna untuk menentukan nama tampil dan nama folder tempat menyimpan file-file mesin virtual yang akan kita buat. Kita juga dapat menempatkan file-file mesin virtual ke dalam folder atau direktori yang sudah ada, atau pada hard disk lain yang berbeda dengan hard disk yang digunakan oleh sistem operasi utama.


11. Di layar ini, kita juga dapat merubah kapasitas hard disk virtual yang akan dibuat sesuai dengan kebutuhan kita. Jika dalam langkah ke-6 kita memilih opsi Dynamically allocated, maka kita dapat membuat ukuran hard disk virtual sampai 2 Terabyte, walaupun hard disk fisik (utama) kita tidak mencapai ukuran 2 Terabyte. Namun, jika kapasitas hard disk fisik kita dibawah 2 Terabyte, tentunya kapasitas hard disk virtual yang dapat digunakan maksimal kapasitas hard disk fisik yang tersisa.



12. Tekan tombol Create untuk membuat mesin virtual Windows 7 berdasarkan pengaturan yang telah dilakukan.  Selesai proses tersebut, di bagian kiri layar aplikasi VirtualBox, akan ditampilkan sebuah mesin virtual Windows 7 dalam keadaan kosong dan siap untuk diinstall.

Minggu, 22 Januari 2017

Adaptive Video Streaming dan FFMPEG

Adaptive Video Streaming dan FFMPEG

Pengguna Adaptive Video Streaming memanfaatkan pengetahuan tentang kondisi pandang pengguna (mirip dengan siaran konvensional) atau bagaimana pengguna akan berinteraksi dengan konten. Dalam kebanyakan kasus, transmisi video streaming tidak mengeksploitasi informasi ini.




arsitektur video streaming Gbr.1 Non-Adaptive

User-adaptif video streaming memberikan umpan balik ke server yang mengubah aliran video; mengubahnya dengan kondisi tampilan klien (resolusi layar, kondisi pencahayaan, jarak antara klien dan layar, dll). The Streaming Server memilih resolusi video tertentu dan parameter encoding yang terbaik untuk kondisi melihat. Datastream bitrate juga berubah dengan tepat. Akibatnya, teknologi ini meningkatkan QoS (kualitas pengalaman) dengan mengoptimalkan trade-off antara bandwidth dan representasi persepsi konten.


arsitektur video streaming ara 2 Adaptive

Stream video yang dikompresi dengan menggunakan codec video seperti H.264, VP8, VP9 atau H.265. Stream audio dikompresi dengan menggunakan codec audio seperti MP3, Vorbis atau AAC. Dikodekan audio dan video stream dirakit dalam bitstream wadah seperti MP4, FLV, WebM, ASF atau ISMA.

teknologi yang lebih baru seperti HLS (HTTP Live Streaming), Microsoft Smooth Streaming, Adobe HDS (HTTP Dinamis Streaming) dan MPEG-DASH (Dynamic Adaptive Streaming melalui HTTP) mendukung bitrate adaptif streaming melalui HTTP. Mereka alternatif untuk menggunakan protokol transport proprietary.

FFMPEG


FFmpeg adalah program komputer yang dapat merekam, mengkonversikan dan streaming audio dan video digital dalam berbagai format. FFmpeg merupakan aplikasi command line yang terdiri dari kumpulan pustaka perangkat lunak bebas / open source. Termasuk libavcodec, library untuk audio codec / video codec yang digunakan oleh beberapa proyek lain, dan libavformat, library untuk audio / video mux kontainer dan demux kontainer. Nama proyek yang berasal dari grup video standar MPEG, di tambahkan "FF" untuk "fast forward".

Proyek ini dimulai oleh Fabrice Bellard (menggunakan nama sanaran "Gerard Lantau"), dan saat ini dikelola oleh Michael Niedermayer. Banyak pengembang FFmpeg merupakan bagian dari proyek MPlayer, FFmpeg di-hosting pada server proyek MPlayer.

FFmpeg dikembangkan pada Linux, tetapi dapat dikompilasi di banyak sistem operasi, termasuk Apple Inc Mac OS X, Microsoft Windows dan AmigaOS. Sebagian besar platform komputasi dan set instruksi arsitektur microprocessor juga di dukung, seperti x86 (IA-32 dan x86-64), PPC (PowerPC), ARM, DEC Alpha, SPARC, dan arsitektur MIPS.

Belakangan, FFmpeg versi .5 baru dirilis, meskipun sebelumnya pengembang FFmpeg selalu menyarankan untuk menyarankan untuk membangun menggunakan source code terbaru dari subversion control system dalam upaya untuk trunk source code yang stabil. Di publikasi menggunakan GNU Lesser General Public License atau GNU General Public License (tergantung pada sub-library yang akan mencakup), FFmpeg adalah perangkat lunak bebas.

Terdapat dua video codec dan satu video kontainer yang ditemukan dalam proyek FFmpeg selama perkembangannya. Kedua video codec yang lossless "FFV1", dan lossy atau lossless "Snow codec", untuk yang versi 1.0 masih dalam pengembangan, dan video kontainer "NUT" yang juga saat ini sedang aktif dikembangkan.

Sabtu, 21 Januari 2017

ImageMagick

ImageMagick adalah kumpulan dari sebagian besar alat baris perintah berbasis yang memungkinkan Anda untuk melihat, mengubah dan mengedit file grafis. Kemampuannya antara lain mampu membuat, memodifikasi dan menampilkan gambar-gambar bitmap serta mampu membaca, melakukan konversi dan menulis ke dalam berbagai format gambar yang berbeda. Selain itu perangkat lunak ini dapat melakukan crop, mengganti warna, rotasi, menggabungkan dan mengaplikasikan berbagai efek.

Mengonversi File.JPG Menjadi File.PNG
Untuk memulainya, kita install imagemagick pada windows 8 (kali ini penulis menggunakan sistem operasi windows 8). Siapkan sebuah file image dalam sebuah folder, penulis siapkan file image dengan nama akatsuki.jpg.

Buka CMD kemudian ketik script berikut.
convert “c:/Gambar/akatsuki.jpg” “c:/Gambar/outputakatsuki.png”

Setelah itu akan menghasilkan file.png dengan nama outputakatsuki.png.



Melakukan rotasi gambar:
Rotasi pada ImageMagick dapat dilakukan dengan menyertakan opsi -rotate pada command ImageMagick yang akan diproses. Variasi dalam merotasi gambar dapat dilakukan dengan mengubah warna background pada gambar yang dirotasi maupun merubah tampilan gambar menjadi bentuk yang diinginkan.
    convert 1.jpg -rotate 45 1rotate-45.jpg

Hasilnya dapat kita lihat sebagai berikut :


Dari perintah di atas dapat diketahui bahwa gambar akan mengalami operasi rotasi sebesar 45 derajat. File output rotasi akan disimpan dengan nama 1rotate-45.jpg.

Melakukan Konversi dari RGB ke Grayscale

Pada ImageMagick kita juga bisa mengatur warna yang digunakan pada gambar. Warna yang dapat kita atur berorientasi pada warna RGB. kali ini kita akan mencoba bagaimana cara merubah warna yang RGB pada gambar menjadi Grayscale. Tambahkan opsi -set dan -colorspace gray untuk mengkonversi warna menjadi Grayscale.

convert 1.jpg -set colorspace RGB -colorspace gray 1gray.jpg



Hasil nya dapat kita lihat dibawah ini :



Keuntungannya aplikasi ini melaksanakan perintah beberapa operasi yang kompleks seperti mengubah label 2D datar menjadi objek 3D dengan tekstur dan warna yang dibutuhkan maka dapat mengulanginya kapan pun pada gambar lain dan mencapai hasil yang sama hanya dalam waktu yang hampir seketika.
Kekurangannya pada umumnya karena tampilannya yang tidak menarik yaitu masih menggunakan command prompt dan masih harus mengetikan operasi yang diinginkan.

Penggunaan terbesarnya dipakai oleh proyek Wikimedia seperti Wikipedia namun pengguna biasa juga bisa menggunakannya karena aplikasi ini bebas licensi.