Script akan menginstall docker dan juga docker-compose pada semua varian linux (debian, fedora, Ubuntu, dll)
wget -qO- https://get.docker.com | sudo sh
root@docker-dev:~# wget -qO- https://get.docker.com | sudo sh
# Executing docker install script, commit: 39040d838e8bcc48c23a0cc4117475dd15189976
+ sh -c apt-get -qq update >/dev/null
+ sh -c DEBIAN_FRONTEND=noninteractive apt-get -y -qq install ca-certificates curl >/dev/null
+ sh -c install -m 0755 -d /etc/apt/keyrings
+ sh -c curl -fsSL "https://download.docker.com/linux/ubuntu/gpg" -o /etc/apt/keyrings/docker.asc
+ sh -c chmod a+r /etc/apt/keyrings/docker.asc
+ sh -c echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu noble stable" > /etc/apt/sources.list.d/docker.list
+ sh -c apt-get -qq update >/dev/null
+ sh -c DEBIAN_FRONTEND=noninteractive apt-get -y -qq install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-ce-rootless-extras docker-buildx-plugin >/dev/null
+ sh -c docker version
Client: Docker Engine - Community
Version: 27.3.1
API version: 1.47
Go version: go1.22.7
Git commit: ce12230
Built: Fri Sep 20 11:40:59 2024
OS/Arch: linux/amd64
Context: default
Server: Docker Engine - Community
Engine:
Version: 27.3.1
API version: 1.47 (minimum version 1.24)
Go version: go1.22.7
Git commit: 41ca978
Built: Fri Sep 20 11:40:59 2024
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.7.22
GitCommit: 7f7fdf5fed64eb6a7caf99b3e12efcf9d60e311c
runc:
Version: 1.1.14
GitCommit: v1.1.14-0-g2c9f560
docker-init:
Version: 0.19.0
GitCommit: de40ad0
================================================================================
To run Docker as a non-privileged user, consider setting up the
Docker daemon in rootless mode for your user:
dockerd-rootless-setuptool.sh install
Visit https://docs.docker.com/go/rootless/ to learn about rootless mode.
To run the Docker daemon as a fully privileged service, but granting non-root
users access, refer to https://docs.docker.com/go/daemon-access/
WARNING: Access to the remote API on a privileged Docker daemon is equivalent
to root access on the host. Refer to the 'Docker daemon attack surface'
documentation for details: https://docs.docker.com/go/attack-surface/
================================================================================
Jika Anda ingin menggunakan Docker tanpa sudo
, tambahkan pengguna Anda ke grup Docker:
sudo usermod -aG docker $USER
Rootless mode memungkinkan pengguna untuk menjalankan Docker tanpa memerlukan hak akses root atau memiliki akses langsung ke daemon Docker sebagai privileged service. Ini memberikan keamanan yang lebih baik dengan mengisolasi daemon Docker dan kontainer dari hak akses root hos.
Mengapa menggunakannya?
Ini adalah cara untuk menjalankan Docker di lingkungan yang lebih aman, terutama pada shared sistem di mana akses root riskan. Ini meminimalisir potensi adanya attack surface jika kontainer terserang, karena kontainer tidak memiliki akses root ke sistem host.
Bagaimana cara mengaktifkannya?
dockerd-rootless-setuptool.sh install
Jika tidak hanya anda yang dapat mengakses server. Pertimbangkan menggunakan rootless mode. Seperti anda menjalankan layanan yang berhadapan dengan publik (situs web, API, dll.)