docker命令实战运用部署服务

1.接上篇博文,先讲一下如何利用docker来对容器进行一个守护进程的启动,以及如何进入日期,如下:

[root@cjr ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
centos       latest    5d0da3dc9764   3 years ago   231MB
[root@cjr ~]# docker run -td --name test centos:latest
1b0cfe7658a202191a1aad90383caee37068396be41ae7889404caca77d24a84
[root@cjr ~]# docker ps
CONTAINER ID   IMAGE           COMMAND       CREATED         STATUS        PORTS     NAMES
1b0cfe7658a2   centos:latest   "/bin/bash"   3 seconds ago   Up 1 second             test
[root@cjr ~]# docker exec -it test /bin/bash
[root@1b0cfe7658a2 /]# exit
exit
[root@cjr ~]# docker ps
CONTAINER ID   IMAGE           COMMAND       CREATED          STATUS          PORTS     NAMES
1b0cfe7658a2   centos:latest   "/bin/bash"   18 seconds ago   Up 17 seconds             test

  • docker run:这是 Docker 命令,用于创建并启动一个新的容器。

  • -t:为容器分配一个伪终端(pseudo-TTY)。

  • -d:以“分离模式”(detached mode)运行容器,即容器在后台运行。

  • --name test:为容器指定一个名称,这里是 test

  • centos:latest:指定使用的镜像,这里是 CentOS 的最新版本。

  • 命令执行后,Docker 会返回一个容器的唯一 ID:1b0cfe7658a202191a1aad90383caee37068396be41ae7889404caca77d24a84

  • docker ps:列出当前正在运行的容器。

  • 输出显示了一个正在运行的容器,其 CONTAINER ID1b0cfe7658a2,使用的镜像是 centos:latest,容器名称为 test,状态为 Up 1 second(已运行 1 秒)。

  • docker exec:在正在运行的容器中执行命令。

  • -it:以交互式终端模式运行命令。

  • test:指定要进入的容器名称。

  • /bin/bash:在容器中启动一个 Bash shell。

  • 执行后,你会进入容器的命令行界面,提示符变为 [root@1b0cfe7658a2 /]#,表示你现在在容器内部。

[root@cjr ~]# docker ps
CONTAINER ID   IMAGE           COMMAND       CREATED         STATUS         PORTS     NAMES
1b0cfe7658a2   centos:latest   "/bin/bash"   3 minutes ago   Up 3 minutes             test
You have new mail in /var/spool/mail/root
[root@cjr ~]# docker stop test
test
[root@cjr ~]# docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
[root@cjr ~]# docker ps -a
CONTAINER ID   IMAGE           COMMAND       CREATED         STATUS                     PORTS     NAMES
1b0cfe7658a2   centos:latest   "/bin/bash"   3 minutes ago   Exited (0) 7 seconds ago             test
[root@cjr ~]# docker start test
test
[root@cjr ~]# docker ps
CONTAINER ID   IMAGE           COMMAND       CREATED         STATUS         PORTS     NAMES
1b0cfe7658a2   centos:latest   "/bin/bash"   3 minutes ago   Up 6 seconds             test
[root@cjr ~]# docker rm -f test
test
You have new mail in /var/spool/mail/root

上文是关于docker命令的一些基本命令,启动、停止、删除、查看历史运行的容器、查看正在运行的容器

二、docker实战运用,部署一个nginx服务

首先让我们有个思路,通过什么镜像去部署?

有两个选择,一个可以直接通过nginx镜像,另外一个可以通过操作系统,然后在操作系统里面进行一个部署,我们选择使用操作系统

思路:利用centos镜像启动一个容器,可以理解为虚拟机,然后再这个虚拟机里面下载nginx服务,在进行一个页面编写用来检测是否部署成功

[root@cjr ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
centos       latest    5d0da3dc9764   3 years ago   231MB
[root@cjr ~]# docker run -itd --name nginx -p 80 centos:latest /bin/bash
d5a3db6f7af9a34fb5c22ca5e258eafe564dba9c1ab7b4cd47ae3d4035d18dd5
[root@cjr ~]# docker ps
CONTAINER ID   IMAGE           COMMAND       CREATED          STATUS          PORTS                                     NAMES
d5a3db6f7af9   centos:latest   "/bin/bash"   49 seconds ago   Up 48 seconds   0.0.0.0:32768->80/tcp, :::32768->80/tcp   nginx
You have new mail in /var/spool/mail/root
[root@cjr ~]# docker exec -it nginx /bin/bash

由于centos镜像已停用,我将镜像换成了rocklinux:8.9,不过命令都是一样的

[root@4948a229a8d0 /]# mkdir -p /var/www/html
[root@4948a229a8d0 /]# vi /var/www/html/index.html
[root@4948a229a8d0 /]# cat /var/www/html/index.html
hello world

修改一下nginx配置文件里面root的默认路径

docker命令实战运用部署服务_第1张图片

docker命令实战运用部署服务_第2张图片

有问题的话可以私信我询问

你可能感兴趣的:(docker,容器,运维)