Docker adalah mesin kontainer aplikasi open source yang menyediakan alat dan layanan untuk mengotomatiskan pengemasan, distribusi, serta eksekusi kontainer. Docker menawarkan berbagai keunggulan, seperti isolasi yang kuat, portabilitas tinggi, dan manajemen yang disederhanakan. Topik ini menjelaskan cara menginstal dan menggunakan Docker serta Docker Compose pada instans Simple Application Server Linux.
Untuk informasi lebih lanjut tentang Docker, lihat Docker Overview.
Jika Anda ingin segera menerapkan lingkungan Docker, lihat Quickly deploy Docker.
Persiapan
Anda telah membuat instans Simple Application Server Linux. Untuk informasi selengkapnya, lihat Create a Simple Application Server instance.
Anda telah menambahkan Port 80 dan 22 ke aturan inbound firewall untuk instans Simple Application Server Linux. Untuk informasi selengkapnya, lihat Set up a firewall.
Deploy Docker
Lakukan koneksi jarak jauh ke instans Simple Application Server. Untuk informasi selengkapnya, lihat Remotely connect to a Linux server.
Deploy Docker berdasarkan sistem operasi server Anda.
Alibaba Cloud Linux 3
Untuk mencegah konflik dan masalah kompatibilitas, uninstal terlebih dahulu komponen Docker yang sudah ada.
Instal Docker Community Edition.
Jika Anda tidak berada di server Alibaba Cloud, ganti
http://mirrors.cloud.aliyuncs.comdenganhttps://mirrors.aliyun.com.# Tambahkan repositori paket Docker sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo # Instal plugin kompatibilitas repositori dnf untuk Alibaba Cloud Linux 3 sudo dnf -y install dnf-plugin-releasever-adapter --repo alinux3-plus # Instal Docker Community Edition, runtime kontainer containerd.io, serta plugin Docker Buildx dan Compose sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginJalankan Docker dan aktifkan agar berjalan saat boot.
# Jalankan Docker sudo systemctl start docker # Aktifkan Docker agar berjalan saat boot sudo systemctl enable docker
Ubuntu
Untuk mencegah konflik dan masalah kompatibilitas, uninstal terlebih dahulu komponen Docker yang sudah ada.
Instal Docker Community Edition.
Jika Anda tidak berada di server Alibaba Cloud, ganti
http://mirrors.cloud.aliyuncs.comdenganhttps://mirrors.aliyun.com.# Perbarui indeks paket apt sudo apt-get update # Tambahkan repositori paket perangkat lunak Docker sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common sudo curl -fsSL http://mirrors.cloud.aliyuncs.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository -y "deb [arch=$(dpkg --print-architecture)] http://mirrors.cloud.aliyuncs.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" # Instal Docker Community Edition, runtime kontainer containerd.io, serta plugin Docker Buildx dan Compose sudo apt-get -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginJalankan Docker dan aktifkan agar berjalan saat boot.
# Jalankan Docker sudo systemctl start docker # Aktifkan Docker agar berjalan saat boot sudo systemctl enable docker
Debian
Untuk mencegah konflik dan masalah kompatibilitas, uninstal terlebih dahulu komponen Docker yang sudah ada.
Instal Docker Community Edition.
Jika Anda tidak berada di server Alibaba Cloud, ganti
http://mirrors.cloud.aliyuncs.comdenganhttps://mirrors.aliyun.com.# Perbarui indeks paket apt sudo apt-get update # Tambahkan repositori paket perangkat lunak Docker sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common sudo curl -fsSL http://mirrors.cloud.aliyuncs.com/docker-ce/linux/debian/gpg | sudo apt-key add - sudo add-apt-repository -y "deb [arch=$(dpkg --print-architecture)] http://mirrors.cloud.aliyuncs.com/docker-ce/linux/debian $(lsb_release -cs) stable" # Instal Docker Community Edition, runtime kontainer containerd.io, serta plugin Docker Buildx dan Compose sudo apt-get -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginJalankan Docker dan aktifkan agar berjalan saat boot.
# Jalankan Docker sudo systemctl start docker # Aktifkan Docker agar berjalan saat boot sudo systemctl enable docker
Red Hat
Untuk mencegah konflik dan masalah kompatibilitas, uninstal terlebih dahulu komponen Docker yang sudah ada.
Instal Docker Community Edition.
Jika Anda tidak berada di server Alibaba Cloud, ganti
http://mirrors.cloud.aliyuncs.comdenganhttps://mirrors.aliyun.com.# Tambahkan repositori paket perangkat lunak Docker sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/rhel/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo # Instal Docker Community Edition, runtime kontainer containerd.io, serta plugin Docker Buildx dan Compose sudo yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginJalankan Docker dan aktifkan agar berjalan saat boot.
# Jalankan Docker sudo systemctl start docker # Aktifkan Docker agar berjalan saat boot sudo systemctl enable docker
Fedora
Untuk mencegah konflik dan masalah kompatibilitas, uninstal terlebih dahulu komponen Docker yang sudah ada.
Instal Docker Community Edition.
Jika Anda tidak berada di server Alibaba Cloud, ganti
http://mirrors.cloud.aliyuncs.comdenganhttps://mirrors.aliyun.com.# Tambahkan repositori paket perangkat lunak Docker sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/fedora/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo # Instal Docker Community Edition, runtime kontainer containerd.io, serta plugin Docker Buildx dan Compose sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginJalankan Docker dan aktifkan agar berjalan saat boot.
# Jalankan Docker sudo systemctl start docker # Aktifkan Docker agar berjalan saat boot sudo systemctl enable docker
Anolis OS
Untuk mencegah konflik dan masalah kompatibilitas, uninstal terlebih dahulu komponen Docker yang sudah ada.
Instal Docker Community Edition.
Jika Anda tidak berada di server Alibaba Cloud, ganti
http://mirrors.cloud.aliyuncs.comdenganhttps://mirrors.aliyun.com.# Tambahkan repositori paket perangkat lunak Docker sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo # Instal Docker Community Edition, runtime kontainer containerd.io, serta plugin Docker Buildx dan Compose sudo yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginJalankan Docker dan aktifkan agar berjalan saat boot.
# Jalankan Docker sudo systemctl start docker # Aktifkan Docker agar berjalan saat boot sudo systemctl enable docker
Alibaba Cloud Linux 2
Untuk mencegah konflik dan masalah kompatibilitas, uninstal terlebih dahulu komponen Docker yang sudah ada.
Instal Docker Community Edition.
Jika Anda tidak berada di server Alibaba Cloud, ganti
http://mirrors.cloud.aliyuncs.comdenganhttps://mirrors.aliyun.com.# Tambahkan repositori paket perangkat lunak Docker sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo # Instal plugin kompatibilitas repositori yum untuk Alibaba Cloud Linux 2 sudo yum install yum-plugin-releasever-adapter --disablerepo=* --enablerepo=plus # Instal Docker Community Edition, runtime kontainer containerd.io, serta plugin Docker Buildx dan Compose sudo yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginJalankan Docker dan aktifkan agar berjalan saat boot.
# Jalankan Docker sudo systemctl start docker # Aktifkan Docker agar berjalan saat boot sudo systemctl enable docker
CentOS 7.x
Untuk mencegah konflik dan masalah kompatibilitas, uninstal terlebih dahulu komponen Docker yang sudah ada.
Instal Docker Community Edition.
Jika Anda tidak berada di server Alibaba Cloud, ganti
http://mirrors.cloud.aliyuncs.comdenganhttps://mirrors.aliyun.com.# Tambahkan repositori paket perangkat lunak Docker sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo # Instal Docker Community Edition, runtime kontainer containerd.io, serta plugin Docker Buildx dan Compose sudo yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginJalankan Docker dan aktifkan agar berjalan saat boot.
# Jalankan Docker sudo systemctl start docker # Aktifkan Docker agar berjalan saat boot sudo systemctl enable docker
CentOS 8.x
Untuk mencegah konflik dan masalah kompatibilitas, uninstal terlebih dahulu komponen Docker yang sudah ada.
Instal Docker Community Edition.
Jika Anda tidak berada di server Alibaba Cloud, ganti
http://mirrors.cloud.aliyuncs.comdenganhttps://mirrors.aliyun.com.# Tambahkan repositori paket perangkat lunak Docker sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo # Instal Docker Community Edition, runtime kontainer containerd.io, serta plugin Docker Buildx dan Compose sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginJalankan Docker dan aktifkan agar berjalan saat boot.
# Jalankan Docker sudo systemctl start docker # Aktifkan Docker agar berjalan saat boot sudo systemctl enable docker
Gunakan Docker untuk segera menerapkan aplikasi web
Buat gambar aplikasi web.
# Tarik gambar Nginx terbaru sudo docker pull nginx:latest # Buat Dockerfile berbasis Nginx untuk menampilkan halaman "Hello World!". sudo tee Dockerfile <<-'EOF' FROM nginx:latest RUN echo 'Hello World!' > /usr/share/nginx/html/index.html EOF # Bangun gambar dan beri tag hello-world:latest sudo docker build . -t hello-world:latestJalankan kontainer bernama
hello-worldmenggunakan gambar aplikasi web.sudo docker run -d -p 80:80 --name hello-world hello-world:latestJalankan
curl http://localhostuntuk memverifikasi bahwa aplikasi web mengembalikanHello World!dengan benar.
Instal Docker Compose
Alibaba Cloud Linux, CentOS, Red Hat, Anolis, Fedora
sudo yum -y install docker-compose-pluginUbuntu, Debian
sudo apt-get -y install docker-compose-pluginGunakan Docker Compose untuk menerapkan aplikasi
Buat file orkestrasi bernama
docker-compose.yaml.# Buat file orkestrasi dan tambahkan layanan MySQL dan WordPress sudo tee docker-compose.yaml <<-'EOF' version: '3.1' services: wordpress: image: wordpress restart: always ports: - "80:80" environment: # Alamat host database WORDPRESS_DB_HOST: wordpress_db # Username database WORDPRESS_DB_USER: wordpress # Password database WORDPRESS_DB_PASSWORD: ${WORDPRESS_DB_PASSWORD} # Nama database WORDPRESS_DB_NAME: wordpress volumes: - wordpress:/var/www/html db: image: mysql:5.7 restart: always container_name: wordpress_db environment: # Nama database MYSQL_DATABASE: wordpress # Username database MYSQL_USER: wordpress # Password database MYSQL_PASSWORD: ${WORDPRESS_DB_PASSWORD} # Password root user database MYSQL_RANDOM_ROOT_PASSWORD: ${WORDPRESS_DB_PASSWORD} volumes: - db:/var/lib/mysql volumes: wordpress: db: EOFPada browser, masukkan
https://<Alamat IP publik instans Simple Application Server>. Halaman konfigurasi WordPress akan muncul. Konfigurasikan parameter sesuai petunjuk di halaman tersebut untuk mengakses WordPress.
Pemecahan Masalah
Konfigurasikan izin Docker untuk pengguna non-root
Tidak dapat mengakses http://mirrors.cloud.aliyuncs.com
Perintah dnf config-manager gagal
Perintah dnf install docker-ce gagal
Referensi
Untuk informasi lebih lanjut tentang penggunaan Docker, lihat dokumentasi resmi Docker.
Artifact Center Alibaba Cloud menyediakan gambar kontainer dasar gratis, aman, dan tepercaya dari Alibaba Cloud dan Komunitas OpenAnolis.
Percepat penarikan gambar dengan fitur akselerasi P2P enterprise. Untuk detailnya, lihat Use P2P acceleration in other container environments.
Kelola sumber daya Alibaba Cloud Anda dengan menjalankan Alibaba Cloud CLI dalam kontainer Docker. Untuk detailnya, lihat Run the Cloud Assistant CLI in a Docker container.