欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > tt_Docker

tt_Docker

2025/4/29 12:44:25 来源:https://blog.csdn.net/m0_66672931/article/details/146996369  浏览:    关键词:tt_Docker

快速上手

  1. 查看 Docker 服务运行状态;
  2. 查看本地镜像;
  3. 从 Docker Hub 拉取基础镜像, 我们此处选择 ubuntu:18.04 镜像;
  4. 再次查看本地镜像;
  5. 使用 ubuntu:18.04 镜像构建容器,并交互式运行容器;
  6. 在容器内部执行 LS 命令;
  7. 退出容器;
  8. 查看本地容器实例;
  9. 再次启动停止的容器;
  10. 退出并停止容器.

执行命令如下:

# 0. 查看 Docker 服务运行状态;
systemctl status docker# 1. 查看本地镜像;
docker images
"""
REPOSITORY   TAG       IMAGE ID   CREATED   SIZE
"""# 2. 从 Docker Hub 拉取基础镜像, 我们此处选择 ubuntu 镜像;
docker search ubuntu
docker search ubuntu --no-trunc
docker pull ubuntu
"""
Using default tag: latest
latest: Pulling from library/ubuntu
405f018f9d1d: Pull complete
Digest: sha256:b6b83d3c331794420340093eb706a6f152d9c1fa51b262d9bf34594887c2c7ac
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest
"""# 3. 再次查看本地镜像;
docker images
docker image ls
"""
REPOSITORY   TAG       IMAGE ID       CREATED      SIZE
ubuntu       latest    27941809078c   9 days ago   77.8MB
"""# 4. 使用 ubuntu 镜像构建容器,并交互式运行容器,并在容器中执行 LS 命令;
docker run -it ubuntu:latest /bin/bash
"""
root@abcced6d5ee8:/# ls
bin  boot  dev  etc  home  lib  lib32  lib64  libx32  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
"""# 5. 退出容器;
exit
"""
exit
[root@bogon docker]#
"""# 6. 查看本地容器实例;
docker ps
docker ps -a
"""
CONTAINER ID   IMAGE           COMMAND       CREATED              STATUS                      PORTS     NAMES
abcced6d5ee8   ubuntu:latest   "/bin/bash"   About a minute ago   Exited (0) 35 seconds ago             sad_montalcini
"""# 7. 再次启动停止的容器;
docker start 容器ID
"""
[root@bogon docker]# docker start abcced6d5ee8
abcced6d5ee8
"""# 8. 再次进入容器
docker exec -it abcced6d5ee8 /bin/bash
"""
root@abcced6d5ee8:/# ls
bin  boot  dev  etc  home  lib  lib32  lib64  libx32  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
"""# 9. 退出容器, 并停止容器
exit
docker stop 容器ID
"""
[root@bogon docker]# docker ps
CONTAINER ID   IMAGE           COMMAND       CREATED         STATUS         PORTS     NAMES
abcced6d5ee8   ubuntu:latest   "/bin/bash"   9 minutes ago   Up 6 minutes             sad_montalcini
[root@bogon docker]# docker stop abcced6d5ee8
abcced6d5ee8
[root@bogon docker]# docker exec -it abcced6d5ee8 /bin/bash
Error response from daemon: Container abcced6d5ee8e6980f8271d3e78d18d0dff708e377c22

镜像操作 

镜像操作主要包括:

  1. 查看镜像
  2. 搜索镜像
  3. 下载镜像
  4. 运行镜像
  5. 删除镜像
  6. 保存镜像
  7. 加载镜像

示例命令:

# 1. 查看镜像
docker images             # 查看所有镜像
docker images -q          # 只查看镜像的ID
docker images --no-trunc  # 显示镜像完整信息# 2. 搜索镜像
docker search 镜像名# 3. 下载镜像
docker pull 镜像名:版本     # 不指定 TAG, 则默认使用 latest# 4. 运行镜像
docker run -it 镜像名:版本 程序                # 交互式运行容器
docker run -it --name=标签名 镜像名:版本 程序   # 容器指定名字
docker run -itd 镜像名:版本 程序               # 后台运行容器# 5. 删除镜像
docker rmi -f 镜像名                   # 删除指定镜像
docker rmi -f 镜像ID                   # 删除指定镜像
docker rmi -f $(docker images -qa)    # 删除所有镜像# 6. 保存镜像
docker save 镜像名:版本 -o xxx.tar"""
[root@bogon ~]# docker save alpine:latest -o myalpine.tar
[root@bogon ~]# ls
anaconda-ks.cfg  myalpine.tar
"""# 7. 加载镜像
docker load -i xxx.tar"""
[root@bogon ~]# docker load -i myalpine.tar
24302eb7d908: Loading layer [==================================================>]  5.811MB/5.811MBREPOSITORY   TAG       IMAGE ID       CREATED        SIZE
alpine       latest    e66264b98777   3 weeks ago    5.53MB
centos       latest    5d0da3dc9764   9 months ago   231MB
"""

 容器操作

容器操作主要包括:

  1. 查看容器
  2. 启动容器
  3. 停止容器
  4. 删除容器
  5. 进入容器
  6. 容器导出
  7. 容器导入
# 1. 查看容器
docker ps       # 查看正在运行的容器实例
docker ps -a    # 查看正在运行或者已停止的容器实例# 2. 运行容器
docker start 容器ID     # 启动容器
docker restart 容器ID   # 重启容器# 3. 停止容器
docker stop 容器ID# 4. 删除容器
docker rm -f 容器ID              # 删除指定容器
docker rm -f $(docker ps -qa)   # 删除所有容器# 5. 进入容器
# attach 退出终端会导致容器停止
# exec 不会导致容器停止
docker attach 容器ID
docker exec -it 容器ID /bin/bash# 6. 容器导出
docker export 容器ID > xxx.tar# 7. 容器导入
docker import xxx.tar xxx:tag

手动构建镜像

1.用到的文件  比如放到(app)xx目录下  

├── app.py

├── features.pkl

├── spam-model.pth

└── email_submit.html

2. 制作镜像

# 1. 下载基础镜像
docker pull python:3.7.5# 2. 创建容器时,指定容器的映射端口、工作目录
docker run -it -p 5000:5000 -w /root/app python:3.7.5 /bin/bash# 3. 安装 app 依赖的 Python 包
pip install pandas flask scikit-learn jieba zhconv -i https://pypi.tuna.tsinghua.edu.cn/simple# 4. 退出容器
exit# 5. 将 app 拷贝到容器 /root 目录下
docker cp app/ 容器ID:/root# 6. 进入容器,启动服务测试
docker start 容器ID
docker exec -it 容器ID /bin/bash
python app.py# 注意: 如果启动服务之后,在浏览器能够正常访问则进行下面的步骤# 7. 将容器存储为镜像
docker stop 镜像ID
docker export 容器ID > spam.tar # 8. 将 tar 包导入为本地镜像
# 此时, 假设我们在另外一台服务器部署镜像
docker import spam.tar spam:1.0# 9. 启动 docker 容器服务
docker run -d -p 5000:5000 -w /root/app spam:1.0 python app.py# 查看镜像是否正在运行
docker ps# 10. 浏览器输入: http://宿主机IP:5000/email_submit 出现下面界面,则镜像工作正常


 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词