在docker安裝並執行centos container並登入其bash介面的方式如下。
在docker環境執行docker pull centos
下載docker centos images。
$ docker pull centos
latest: Pulling from library/centos
Digest: sha256:fe8d824220415eed5477b63addf40fb06c3b049404242b31982106ac204f6700
Status: Downloaded newer image for centos:latest
使用docker run -it centos bash
命令執行centos image來建立centos container並登入其bach指令介面。-it
參數實際為--interactive
(互動模式,保持STDIN
開啟)與--tty
(pseudo-terminal,偽終端)的組合。兩參數的作用為執行centos container時登入其bash並可輸入參數。
$ docker run -it centos
[root@b5d386fa6fac /]#
執行後即會進入centos container的bash。命令行提示符root@b5d386fa6fac
後面的英文數字為container id。
使用linux的ls
檢視目錄。
[root@b5d386fa6fac /]# ls
bin etc lib lost+found mnt proc run srv tmp var
dev home lib64 media opt root sbin sys usr
使用cat /etc/*release*
指令列出centos版本。
[root@b5d386fa6fac /]# cat /etc/*release*
CentOS Linux release 8.1.1911 (Core)
Derived from Red Hat Enterprise Linux 8.1 (Source)
NAME="CentOS Linux"
VERSION="8 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="8"
PLATFORM_ID="platform:el8"
PRETTY_NAME="CentOS Linux 8 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:8"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-8"
CENTOS_MANTISBT_PROJECT_VERSION="8"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="8"
CentOS Linux release 8.1.1911 (Core)
CentOS Linux release 8.1.1911 (Core)
cpe:/o:centos:centos:8
使用exit
離開centos container bash。
[root@b5d386fa6fac /]# exit
$
離開後centos container就會停止運行。
若要讓centos container保持在背景持續運行,使用docker run -t -d centos
指令。-d
是--detach
參數的簡寫,效果為在背景執行命令。
$ docker run -t -d centos
de44e585d3cf8a8048a006c57fc9a7e4acfa5c228616ff3b2422244b903f9dab
查詢在運行的容器,CONTAINER_ID=de44e585d3cf
即為在背景運行的centos container。
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
de44e585d3cf centos "/bin/bash" 4 seconds ago Up 3 seconds hardcore_brown
若要對運行的容器直接下達命令,使用docker exec <CONTAINER_ID> <command>
。CONTAINER_ID
是容器的id,例如de44e585d3cf
。此外也可以用CONTAINER_NAME
容器名稱例如hardcore_brown
指名要執行命令的container;command
為要下達的命令。
例如下面對剛在背景執行的centos container執行ls
命令。
$ docker exec de44e585d3cf ls
bin
dev
etc
home
lib
lib64
lost+found
media
mnt
opt
proc
root
run
sbin
srv
sys
tmp
usr
var
沒有留言:
張貼留言