Docker容器

更新时间:2023-05-06 19:25:59 阅读: 评论:0

一、什么是docker?
        Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
一个完整的Docker有以下几个部分组成:
1、dockerClient客户端
2、Docker Daemon守护进程
3、Docker Image镜像
4、DockerContainer容器
    二、如何安装docker
   docker支持在主流的操作系统平台上使用,包含Ubuntu、Centos、Windows以及MacOS
系统等。当然在linux系统平台上是原生支持,使用体验是最好的。本分享中就以centos为例进行安装
    docker支持centos6以及后面的版本
  $yum install –y docker
  三、镜像
    1.获取镜像
docker pull NAME[:TAG]    比如:docker pull Ubuntu
    2.查看镜像信息
[root@localhost ~]# docker images;
REPOSITORY          TAG                IMAGE ID            CREATED            SIZE
docker.io/ubuntu    latest              00fd29ccc6f1        32 hours ago        110.5 MB
[root@localhost ~]# docker inspect 00fd29ccc6f1
[
    {
        "Id": "sha256:00fd29ccc6f167fa991580690a00e844664cb2381c74cd14d539e36ca014f043",
        "RepoTags": [
            "docker.io/ubuntu:latest"
  3.搜索镜像(搜索远端仓库中共享的镜像,默认搜索docker HUB官方仓库中的镜像)
docker arch mysql
INDEX      NAME                                                            DESCRIPTION                                    STARS    OFFICIAL  AUTOMATED
docker.io  docker.io/mysql                                                  MySQL is a widely ud,   5412      [OK]       
docker.io  docker.io/mariadb                                                MariaDB is a community-developed fork   1676      [OK]       
docker.io  docker.io/mysql/mysql-rver                                    Optimized MySQL Server Docker images.   373                  [OK]
docker.io  docker.io/percona                                                Percona Server is a fork of the   309      [OK]       
docker.io  docker.io/hypriot/rpi-mysql                                      RPi-compatible Docker Image with Mysql          74                   
docker.io  docker.io/zabbix/zabbix-rver-mysql                            Zabbix Server with MySQL databa support      66                  [OK]
docker.io  docker.io/centurylink/mysql                                      Image containing
4.删除镜像
docker rmi image(image可以为标签或者ID)
docker rmi Ubuntu:latest
dicker rmi –f ubuntu  强行删除,不建议这样操作
一般建议先删除依赖该镜像的所有容器,再来删除镜像。
docker ps -a查看本机上存在的容器。
5.创建镜像
基于已有的镜像的容器创建:
[root@localhost ~]# docker run -ti ubuntu /bin/bash
touch test
exit
docker commit –m “Added a new file” –a “docker Newbee” 8bd2274ada22  test  9ecdbadc
基于本地模板导入
cat ubuntu –14.04-x86_ |docker import – ubuntu:14.04
 
6.存出和载入镜像
存出镜像
[root@localhost ~]# docker images 
REPOSITORY          TAG                IMAGE ID            CREATED            SIZE
docker.io/ubuntu    latest              00fd29ccc6f1        2 days ago          110.5 MB
docker.io/httpd    latest              7239615c0645        5 days ago          177.3 MB
docker.io/mysql    latest              7d83a47ab2d2        5 days ago   
[root@localhost ~]# docker save -o ubuntu_test.tar ubuntu
[root@localhost ~]# docker images 
REPOSITORY          TAG                IMAGE ID            CREATED            SIZE
docker.io/ubuntu    latest              00fd29ccc6f1        2 days ago          110.5 MB
docker.io/httpd    latest              7239615c0645        5 days ago          177.3 MB
docker.io/mysql    latest              7d83a47ab2d2        5 days ago          408.2 MB
[root@localhost ~]# ls
anaconda-ks.cfg  ubuntu_test.tar
载入镜像
docker load < ubuntu_test.tar
四、容器
简单地说,容器是镜像的一个运行实例,所不同的是,它带有额外的可写文件层。
创建容器:
新建容器:
[root@localhost ~]# docker create -it ubuntu:latest
743f20816538a52a686cf61d6a30db6fdb609c0da2d6a844e645b334b9bb3252
docker start
新建并启动容器
docker run ubuntu  /bin/echo “Hello world’
docker ps: 查看当前运行的容器
docker ps -a:查看所有容器,包括停止的
docker ps -l :查看最新创建的容器,只列出最后创建的。
docker ps -n=2:-n=x选项,会列出最后创建的x个容器。
容器名:docker start docker_run,或者ID:docker start 43e3fef2266c
–restart(自动重启):默认情况下容器是不重启的,–restart标志会检查容器的退出码来决定容器是否重启容器。
docker run --restart=always --name docker_restart -d centos /bin/sh -c "while true;do echo hello world; sleep;done":
--restart=always:不管容器的返回码是什么,都会重启容器。
--restart=on-failure:5:当容器的返回值是非0时才会重启容器。5是可选的重启次数
容器终止
docker stop [NAME]/[CONTAINER ID]:将容器退出。
docker kill [NAME]/[CONTAINER ID]:强制停止一个容器。
删除容器
docker rm [NAME]/[CONTAINER ID]

本文发布于:2023-05-06 19:25:59,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/90/98359.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:容器   镜像   重启   使用
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图