Oracle Linux - Instal Docker di OL6
http://johanlouwers.blogspot.com/2017/07/oracle-linux-install-docker-on-ol6.html
Docker adalah teknologi perangkat lunak yang menyediakan wadah, dipromosikan oleh perusahaan Docker, Inc. Docker menyediakan lapisan tambahan abstraksi dan otomatisasi virtualisasi tingkat sistem operasi pada Windows dan Linux. Docker menggunakan fitur isolasi sumber daya kernel Linux seperti cgroups dan ruang nama kernel, dan sistem file berkemampuan serikat seperti OverlayFS dan lainnya untuk memungkinkan "wadah" independen berjalan dalam satu instance Linux, menghindari overhead memulai dan memelihara mesin virtual.
Dukungan kernel Linux untuk ruang nama sebagian besar mengisolasi tampilan aplikasi dari lingkungan operasi, termasuk pohon proses, jaringan, ID pengguna dan sistem file yang dipasang, sementara cgroup kernel menyediakan pembatasan sumber daya, termasuk CPU, memori, blok I/O, dan jaringan. . Sejak versi 0.9, Docker menyertakan library libcontainer sebagai caranya sendiri untuk langsung menggunakan fasilitas virtualisasi yang disediakan oleh kernel Linux, selain menggunakan antarmuka virtualisasi abstrak melalui libvirt, LXC (Linux Containers) dan systemd-nspawn.
Blogpost ini akan membahas detail pemasangan mesin Docker yang sangat mendasar di Oracle Linux untuk tujuan pengujian. Oracle Linux 6 diinstal menggunakan distribusi Vagrant resmi untuk Oracle Linux.
Aktifkan add-on
untuk dapat menginstal Docker menggunakan yum Anda harus memastikan bahwa repositori yum addons diaktifkan. Ini dapat dilakukan dengan memastikan bahwa Anda telah mengaktifkan set ke 1 untuk saluran ini di file /etc/yum.repos.d/public-yum-ol6.repo. Contoh perubahan ini ditunjukkan di bawah ini
Instal dengan yum
untuk menginstal Docker di Oracle Linux 6 Anda dapat menggunakan yum, docker akan berlokasi di saluran addons. Karenanya alasan mengapa kami mengaktifkan ini di langkah sebelumnya. Instal Docker cukup dengan menjalankan perintah di bawah ini:
Ini akan menangani penyelesaian dependensi dan menginstal mesin buruh pelabuhan di Oracle Linux.
Ubah konfigurasi buruh pelabuhan:
Sebagai bagian dari praktik terbaik seperti yang dijelaskan oleh Oracle, Anda perlu mengubah beberapa hal pada skrip init yang digunakan untuk memulai mesin buruh pelabuhan. Di Docker versi 1.5 dan yang lebih baru, layanan buruh pelabuhan membatalkan pembagian namespace mountnya untuk menyelesaikan masalah sibuk perangkat dengan driver penyimpanan mapper perangkat. Namun, konfigurasi ini merusak autofs di sistem host dan mencegah Anda mengakses volume yang dipasang selanjutnya di wadah Docker. Solusinya adalah menghentikan layanan Docker agar tidak membagikan namespace mount-nya.
Edit /etc/init.d/docker dan hapus parameter $unshare -m -- dari baris yang memulai daemon. Misalnya, ubah baris yang berbunyi mirip dengan berikut ini:
Ini adalah bagian dari fungsi start() dalam skrip init, contoh lebih lengkap dari bagian skrip ini ditunjukkan di bawah ini:
Baris yang disebutkan harus dihapus (dikomentari) dan diganti dengan yang di bawah ini.
$exec $other_args &>> $logfile &
Sebuah peringatan adalah Anda mungkin ingin memeriksa bagian skrip ini setelah Anda memperbarui mesin buruh pelabuhan. Karena skrip init adalah bagian dari instalasi buruh pelabuhan, itu mungkin berubah ketika Anda menginstal versi buruh pelabuhan yang lebih baru di sistem Anda. Praktik yang baik adalah mendapatkan versi init di repositori lokal Anda dan menggunakan sesuatu seperti chef inspect setelah pembaruan pada Anda sistem untuk memastikan cara memulai yang benar digunakan dan Anda mencegah kerusakan autosf.
Memulai buruh pelabuhan:
sekarang instalasi selesai yang berarti kita harus dapat memulai buruh pelabuhan pada instance Oracle Linux kita. Anda dapat memulai buruh pelabuhan dengan perintah di bawah ini:
untuk memastikan mesin buruh pelabuhan menyala setiap kali kita mem-boot mesin, kita harus memastikan bahwa kita mendaftarkannya dengan cara yang benar. Ini dapat dilakukan dengan perintah di bawah ini:
untuk memeriksa apakah ini dilakukan dengan benar, Anda harus memeriksanya dengan perintah chkconfig. Hasil ini pada mesin uji kami di output di bawah ini. Anda dapat menemukan buruh pelabuhan di daftar di bawah ini dan Anda dapat melihat bahwa itu akan mulai secara otomatis.
Untuk memastikan buruh pelabuhan berjalan, Anda dapat menjalankan perintah info buruh pelabuhan, contohnya ditunjukkan di bawah ini dan seperti yang diharapkan, kami tidak menjalankan apa pun di mesin buruh pelabuhan kami:
Selain info buruh pelabuhan, Anda juga dapat melakukan versi buruh pelabuhan untuk mengetahui versi pasti dari versi yang berjalan pada instance Oracle Linux. Contoh ditunjukkan di bawah ini:
Ini pada dasarnya memberi Anda instalasi Docker yang sangat standar dan dasar yang memungkinkan Anda untuk mulai bereksperimen dengan Docker di Oracle Linux.
Dukungan kernel Linux untuk ruang nama sebagian besar mengisolasi tampilan aplikasi dari lingkungan operasi, termasuk pohon proses, jaringan, ID pengguna dan sistem file yang dipasang, sementara cgroup kernel menyediakan pembatasan sumber daya, termasuk CPU, memori, blok I/O, dan jaringan. . Sejak versi 0.9, Docker menyertakan library libcontainer sebagai caranya sendiri untuk langsung menggunakan fasilitas virtualisasi yang disediakan oleh kernel Linux, selain menggunakan antarmuka virtualisasi abstrak melalui libvirt, LXC (Linux Containers) dan systemd-nspawn.
Blogpost ini akan membahas detail pemasangan mesin Docker yang sangat mendasar di Oracle Linux untuk tujuan pengujian. Oracle Linux 6 diinstal menggunakan distribusi Vagrant resmi untuk Oracle Linux.
Aktifkan add-on
untuk dapat menginstal Docker menggunakan yum Anda harus memastikan bahwa repositori yum addons diaktifkan. Ini dapat dilakukan dengan memastikan bahwa Anda telah mengaktifkan set ke 1 untuk saluran ini di file /etc/yum.repos.d/public-yum-ol6.repo. Contoh perubahan ini ditunjukkan di bawah ini
[public_ol6_addons] name=Oracle Linux $releasever Pengaya ($basearch) baseurl=http://yum.Oracle.com/repo/OracleLinux/OL6/addons/$basearch/ gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Oracle gpgcheck=1 diaktifkan = 1
Instal dengan yum
untuk menginstal Docker di Oracle Linux 6 Anda dapat menggunakan yum, docker akan berlokasi di saluran addons. Karenanya alasan mengapa kami mengaktifkan ini di langkah sebelumnya. Instal Docker cukup dengan menjalankan perintah di bawah ini:
yum instal docker-engine
Ini akan menangani penyelesaian dependensi dan menginstal mesin buruh pelabuhan di Oracle Linux.
Ubah konfigurasi buruh pelabuhan:
Sebagai bagian dari praktik terbaik seperti yang dijelaskan oleh Oracle, Anda perlu mengubah beberapa hal pada skrip init yang digunakan untuk memulai mesin buruh pelabuhan. Di Docker versi 1.5 dan yang lebih baru, layanan buruh pelabuhan membatalkan pembagian namespace mountnya untuk menyelesaikan masalah sibuk perangkat dengan driver penyimpanan mapper perangkat. Namun, konfigurasi ini merusak autofs di sistem host dan mencegah Anda mengakses volume yang dipasang selanjutnya di wadah Docker. Solusinya adalah menghentikan layanan Docker agar tidak membagikan namespace mount-nya.
Edit /etc/init.d/docker dan hapus parameter $unshare -m -- dari baris yang memulai daemon. Misalnya, ubah baris yang berbunyi mirip dengan berikut ini:
"$unshare" -m -- $exec $other_args >> $logfile 2>&1 &
Ini adalah bagian dari fungsi start() dalam skrip init, contoh lebih lengkap dari bagian skrip ini ditunjukkan di bawah ini:
Mulailah() { jika [ ! -x $exec ]; kemudian jika [ ! -e $exec ]; kemudian echo "Docker yang dapat dieksekusi $exec tidak ditemukan" lain echo "Anda tidak memiliki izin untuk menjalankan $exec yang dapat dieksekusi Docker" fi keluar 5 fi check_for_cleanup jika ! [ -f $pidfile ]; kemudian pra-mulai printf "Memulai $prog:\t" echo "\n$(date)\n" >> $logfile "$unshare" -m -- $exec $other_args >> $logfile 2>&1 & pid=$! touch $lockfile # wait up to 10 seconds for the pidfile to exist. see # https://github.com/docker/docker/issues/5359 tries=0 while [ ! -f $pidfile -a $tries -lt 10 ]; do sleep 1 tries=$((tries + 1)) echo -n '.' done if [ ! -f $pidfile ]; then failure echo exit 1 fi success echo else failure echo printf "$pidfile still exists...\n" exit 7 fi }
Baris yang disebutkan harus dihapus (dikomentari) dan diganti dengan yang di bawah ini.
$exec $other_args &>> $logfile &
Sebuah peringatan adalah Anda mungkin ingin memeriksa bagian skrip ini setelah Anda memperbarui mesin buruh pelabuhan. Karena skrip init adalah bagian dari instalasi buruh pelabuhan, itu mungkin berubah ketika Anda menginstal versi buruh pelabuhan yang lebih baru di sistem Anda. Praktik yang baik adalah mendapatkan versi init di repositori lokal Anda dan menggunakan sesuatu seperti chef inspect setelah pembaruan pada Anda sistem untuk memastikan cara memulai yang benar digunakan dan Anda mencegah kerusakan autosf.
Memulai buruh pelabuhan:
sekarang instalasi selesai yang berarti kita harus dapat memulai buruh pelabuhan pada instance Oracle Linux kita. Anda dapat memulai buruh pelabuhan dengan perintah di bawah ini:
layanan buruh pelabuhan dimulai
untuk memastikan mesin buruh pelabuhan menyala setiap kali kita mem-boot mesin, kita harus memastikan bahwa kita mendaftarkannya dengan cara yang benar. Ini dapat dilakukan dengan perintah di bawah ini:
chkconfig buruh pelabuhan aktif
untuk memeriksa apakah ini dilakukan dengan benar, Anda harus memeriksanya dengan perintah chkconfig. Hasil ini pada mesin uji kami di output di bawah ini. Anda dapat menemukan buruh pelabuhan di daftar di bawah ini dan Anda dapat melihat bahwa itu akan mulai secara otomatis.
[root@localhost ~]# chkconfig acpid 0:mati 1:mati 2:aktif 3:aktif 4:aktif 5:aktif 6:mati blk-ketersediaan 0:nonaktif 1:aktif 2:aktif 3:aktif 4:aktif 5:aktif 6:non cgconfig 0:off 1:off 2:off 3:off 4:off 5:off 6:off cgred 0:off 1:off 2:off 3:off 4:off 5:off 6:off crond 0:off 1:off 2:on 3:on 4:on 5:on 6:off docker 0:off 1:off 2:on 3:on 4:on 5:on 6:off ip6tables 0:off 1:off 2:on 3:on 4:on 5:on 6:off iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off lvm2-monitor 0:off 1:on 2:on 3:on 4:on 5:on 6:off netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off netfs 0:off 1:off 2:off 3:on 4:on 5:on 6:off network 0:off 1:off 2:on 3:on 4:on 5:on 6:off ntpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off ntpdate 0:off 1:off 2:off 3:off 4:off 5:off 6:off rdisc 0:off 1:off 2:off 3:off 4:off 5:off 6:off restorecond 0:off 1:off 2:off 3:off 4:off 5:off 6:off rsyslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off saslauthd 0:mati 1:mati 2:mati 3:mati 4:mati 5:mati 6:mati sendmail 0:mati 1:nonaktif 2:aktif 3:aktif 4:aktif 5:aktif 6:non sshd 0:mati 1:mati 2:aktif 3:aktif 4:aktif 5:aktif 6:mati udev-posting 0:mati 1:pada 2:pada 3:pada 4:pada 5:pada 6:mati vboxadd 0:mati 1:mati 2:aktif 3:aktif 4:aktif 5:aktif 6:mati vboxadd-service 0:mati 1:mati 2:aktif 3:aktif 4:aktif 5:aktif 6:mati vboxadd-x11 0:mati 1:mati 2:mati 3:aktif 4:mati 5:aktif 6:mati [root@localhost ~]#
Untuk memastikan buruh pelabuhan berjalan, Anda dapat menjalankan perintah info buruh pelabuhan, contohnya ditunjukkan di bawah ini dan seperti yang diharapkan, kami tidak menjalankan apa pun di mesin buruh pelabuhan kami:
[root@localhost ~]# info buruh pelabuhan Wadah: 0 Berjalan: 0 Dijeda: 0 Berhenti: 0 Gambar: 0 Versi Server: 1.12.6 Driver Penyimpanan: devicemapper Nama Kolam Renang: docker-251: 1-1835143-pool Ukuran Blok Kolam Renang: 65,54 kB Ukuran Perangkat Dasar: 10,74 GB Sistem File Pendukung: ext4 Data file: /dev/loop0 Metadata file: /dev/loop1 Data Space Used: 305.7 MB Data Space Total: 107.4 GB Data Space Available: 31.62 GB Metadata Space Used: 729.1 kB Metadata Space Total: 2.147 GB Metadata Space Available: 2.147 GB Thin Pool Minimum Free Space: 10.74 GB Udev Sync Supported: true Deferred Removal Enabled: false Deferred Deletion Enabled: false Deferred Deleted Device Count: 0 Data loop file: /var/lib/docker/devicemapper/devicemapper/data WARNING: Usage of loopback devices is strongly discouraged for production use. Use `--storage-opt dm.thinpooldev` to specify a custom block storage device. Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata Library Version: 1.02.117-RHEL6 (2016-12-13) Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: bridge overlay null host Kawanan: tidak aktif Waktu tayang: runc Waktu Proses Default: runc Pilihan Keamanan: Versi Kernel: 4.1.12-61.1.28.el6uek.x86_64 Sistem Operasi: Oracle Linux Server 6.9 Tipe OS: linux Arsitektur: x86_64 CPU: 2 Total Memori: 1,953 GiB Nama: localhost ID: GU6G:JV6O:7Y6R:5F5R:OGEI:5AZG:SOVP:BBFF:4DME:YKDU:24MC:54MK Dir Root Docker: /var/lib/docker Mode Debug (klien): salah Mode Debug (server): salah Registri: https://index.docker.io/v1/ Registri Tidak Aman: 127.0.0.0/8 [root@localhost ~]#
Selain info buruh pelabuhan, Anda juga dapat melakukan versi buruh pelabuhan untuk mengetahui versi pasti dari versi yang berjalan pada instance Oracle Linux. Contoh ditunjukkan di bawah ini:
[root@localhost ~]# versi buruh pelabuhan Klien: Versi: 1.12.6 Versi API: 1.24 Pergi versi: go1.6.4 Git komit: 1512168 Dibuat: Rabu 11 Jan 09:49:56 2017 OS/Arch: linux/amd64 Server: Versi: 1.12.6 Versi API: 1.24 Pergi versi: go1.6.4 Git komit: 1512168 Dibuat: Rabu 11 Jan 09:49:56 2017 OS/Arch: linux/amd64 [root@localhost ~]#
Ini pada dasarnya memberi Anda instalasi Docker yang sangat standar dan dasar yang memungkinkan Anda untuk mulai bereksperimen dengan Docker di Oracle Linux.
Tidak ada komentar:
Posting Komentar