您的位置:

Docker后台运行详解

一、docker后台运行一个实例命令

使用docker命令后面加上run选项就可以在容器内运行一个实例,具体命令如下:

docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]

其中OPTIONS包含以下参数:

  • -d, --detach: 后台运行容器并返回容器ID,取消detach参数可以在前台启动运行。
  • --name string: 为容器指定名称。
  • -p, --publish list: 暴露容器端口号,可以指定本地的端口号和容器内部运行的端口号。
  • --rm: 容器退出后自动删除。
  • -e, --env list: 为容器设置环境变量。

例如,以下是在容器内运行一个nginx实例的命令:

docker run -d --name mynginx -p 8080:80 nginx

上述命令将在后台运行一个名为mynginx的容器,并将容器内部的80端口映射到主机的8080端口。

二、docker后台运行怎么看状态

可以使用docker命令的ps选项来查看后台运行的容器状态,具体命令如下:

docker ps [OPTIONS]

其中OPTIONS包含以下参数:

  • -a, --all: 显示所有容器,包括已退出的。
  • --filter filter: 根据指定条件过滤容器。
  • --format string: 格式化输出信息。
  • -n, --last int: 显示最后N个容器。

例如,以下命令可以以数据表格的形式显示所有的容器。

docker ps -a --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"

三、docker后台运行命令

在容器内后台运行命令的方法与在主机上的方法类似,只需要在命令后面加上&即可。例如:

docker exec -d mynginx /bin/bash -c "/usr/sbin/nginx &"

上述命令将在mynginx容器的后台执行nginx命令。

四、docker运行安卓

要在docker中运行安卓环境,可以使用anbox-docker镜像。具体命令如下:

docker run -d --privileged --name anbox-session anbox/snap-docker
docker run -d --net=host --pid=host --cap-add=SYS_ADMIN --env="DISPLAY" --volume="$HOME/.Xauthority:/root/.Xauthority:rw" --env=QT_X11_NO_MITSHM=1 --device=/dev/snd --name anbox anbox/snap-docker --no-window --scale=1,1 --maximized

上述命令中,第一行命令将启动一个守护进程,第二行命令将启动安卓系统。

五、docker后台运行命令加什么后缀

Docker后台运行命令加上后缀&即可在容器内后台运行。例如:

docker exec -d mynginx /bin/bash -c "/usr/sbin/nginx &"

六、docker运行JDK

要在docker中运行JDK环境,可以使用docker官方提供的jdk镜像。具体命令如下:

docker run -it --rm openjdk:11-jdk

上述命令将启动一个openjdk:11-jdk镜像容器,并在交互模式下运行。

七、docker运行容器

要在docker中运行容器,需要使用docker run命令。具体命令如下:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

其中OPTIONS可以设置容器的启动参数。

例如,以下命令将启动一个ubuntu容器,并使用/bin/bash命令:

docker run -it ubuntu /bin/bash

八、docker运行APK

要在docker中运行APK程序,需要先构建一个包含安卓环境的镜像,然后使用容器运行该镜像。具体命令如下:

docker run -it --privileged -v /dev/bus/usb:/dev/bus/usb  bash -c 'adb install /path/to/apk'

其中,参数-v /dev/bus/usb:/dev/bus/usb将主机的USB总线映射到容器中,<image id>为已经包含安卓环境的镜像的ID,/path/to/apk为APK文件的路径。

九、docker运行nginx

要在docker中运行nginx,可以使用官方提供的nginx镜像。具体命令如下:

docker run --name mynginx -p 80:80 -d nginx

上述命令将在docker中启动一个名为mynginx的容器,并将容器内部的80端口映射到主机的80端口。