0
点赞
收藏
分享

微信扫一扫

Docker容器的基本命令

快乐码农Alan007 2022-02-21 阅读 89

容器命令

说明:我们有了镜像才可以创建容器,liunx,下载一个centos镜像来测试学习一下

docker pull centos

新建容器并启动

docker run [可选参数]  imageid
#参数说明
--name='Name'    容器名字,用来区分容器
-d               后台运行方式
-it              使用交互式运行,进入容器查看内容
-p               制定容器的端口-跑8080:8080
      -p ip:主机端口:容器端口
      -p 主机端口:容器端口
      -p 容器端口
      容器端口
-p                 随机指定端口
#测试 启动并进入容器
[root@iZ2ze5jmothsemz6viicqtZ /]# docker run -it centos /bin/bash
#容器内的centos
[root@8c6d116e316d /]# ls
bin  dev  etc  home  lib  lib64  lost+found  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
[root@8c6d116e316d /]# exit
exit
[root@iZ2ze5jmothsemz6viicqtZ /]# ls
bin   dev            docker-client-latest  docker-engine  docker-latest-logrotate  etc   lib    lost+found  mnt  proc  run   srv  tmp  var
boot  docker-client  docker-common         docker-latest  docker-logrotate         home  lib64  media       opt  root  sbin  sys  usr

列出所有运行的容器

docker ps 命令
-a  #列出当前正在运行的容器+历史
-n=?#显示最近运行的容器
-q  只显示容器的编号

退出容器:

exit :直接容器停止并退出
ctrl+p+q :容器不停止退出

删除容器

docker rm  容器id   删除制定容器,不能删除正在运行的容器,要是删除 rm -f 
docker rm -f $(docker imager -ap)
docker ps -a -q |xargs docker rm #删除所有容器

启动和停止容器的操作

docker start 容器id
docker restart 容器id  #重启
docker stop 容器id    #停止容器
docker kill 容器id    #强制停止

常用的其他命令

后台启动容器

#命令 docker run -d 镜像名
docker run -d centos
#问题 docker ps 发现centos 停止了
#常见的坑,docker容器使用后台运行,就必须要有一个前端进程,docker发现没有应用,就会自动停止
#Nginx 容器启动后,发现自己没有提供服务,就会立即停止,就是没有程序了

查看日志

docker logs --help

查看容器中的进程ps

docker top :查看docker内部的id

查看镜像的原数据

docker inspect 容器id #查看容器的详细信息

进入当前正在运行的容器

#我们通常容器都是在使用后台方式运行,需要进入容器,修改配置
docker exec -it 容器id bashshell(/bin/bash) #进入容器后开启新的终端,可以在里面运行

#方式二
docker attach 容器id 
# 测试
docker attach 容器id bashshell(/bin/bash) #进入容器正在执行的终端,不会开启新的进程
正在执行的代码

从容器内拷贝文件到主机上

docker cp 容器id:容器路径  目的路径
docker cp  id :/home/test.py  /home 
#拷贝是一个手动的过程,未来我们使用 -v 卷的技术,可以实现

操作命令

帮助命令

docker version  #显示版本
docker info  # 显示docker的系统信息,包括镜像和容器的数量
docker 命令--help #万能命令

帮助文档地址:https://docs.docker.com/engine/reference/commandline/docker/

练习Nginx

1、搜索镜像 docker search Nginx
2、下载镜像 docker pull Nginx
3、查看镜像 docker images
4、启动Nginx docker run -d --name nginx01 -p 3344:80 nginx
-d 后台运行
--name  给容器起名字
-p Nginx端口/容器端口


   本机自测
      [root@iZ2ze5jmothsemz6viicqtZ /]# curl localhost:3344
      <!DOCTYPE html>
      <html>
      <head>
      <title>Welcome to nginx!</title>
      <style>
      html { color-scheme: light dark; }
      body { width: 35em; margin: 0 auto;
      font-family: Tahoma, Verdana, Arial, sans-serif; }
      </style>
      </head>
      <body>
      <h1>Welcome to nginx!</h1>
      <p>If you see this page, the nginx web server is successfully installed and
      working. Further configuration is required.</p>

      <p>For online documentation and support please refer to
      <a href="http://nginx.org/">nginx.org</a>.<br/>
      Commercial support is available at
      <a href="http://nginx.com/">nginx.com</a>.</p>

      <p><em>Thank you for using nginx.</em></p>
      </body>
      </html>
   5、进入容器
   docker exec -it Nginx01 /bin/bash
   容器里边操作
   whereis nginx
   cd /etc/nginx 
   ls

思考问题:我们每次改动Nginx配置文件,都需要进入容器内部,十分麻烦,要可以在容器外部提供一个映射路径,达到在容器修改文件名,容器内部就可以自动修改 -v 数据卷

举报

相关推荐

0 条评论