`

docker小结1

 
阅读更多
1 通过dockerfile建立一个简单的HELLO.C,然后做一个简单的docker image
,这个是base image,共享宿主机的base image

  建立目录,比如helloworld目录下,建立Dockerfile文件,写入

FROM scratch
ADD hello /
CMD ["/hello"]  //CMD运行后是会马上退出的

>docker build -t liaoyurong/hello-world  .
运行docker run liaoyurong/hello-world  输出结果

2 IMAGE和容器container的关系,大概等于类和实例的关系

3 docer container ls -a //列出当前运行和已退出的container

4 docker run -it centos  //直接会进centosde container,
   exit //退出

5 docker container rm containerid(可以不写全)
6 docker ps -a
  docker ls -aq //列出所有containerid
   docker rm  $(docker container ls -aq)  //全部清理

7
比如在container中做了修改后,EXIT退出DOCKER,

docer container ls -a

找出最新的names(是个随机字母)
docker  commit   names  xxxx/xxxx   //容器中再修改后再提交成IMAGE

8 通过dockerfile往CENTOS中安装VIM
  FROM centos
  RUN yum-install vim
  
然后docker build -t liao/xxxx .
   
9 dockerfile语法
   FROM scratch  // 制作baseimage
   FROM  centos  
LABEL version="1.0"  //定义相关元数据
RUN yum update &&yum install -y .....

  WORKDIR /root  设定当前工作目录
ADD hello  /   //复制到根目录
ADD  test.tar.gz  /  添加到根目录并解压

WORKDIR /root
ADD hello test/         hello的位置在#/root/test/hello

ENV MYSQL_VER  5.6  //设定的常量


10 RUN:执行命令并创建新的IMAGE LAYER
  CMD:设置容易启动后默认执行的命令和参数,如果
docker run指定了其他命令,则CMD命令被忽略,
如果定义了多个CMD,则最后一个才给执行
  ENTRYPOINT:设置容器启动时运行的命令

11 SHELL格式
     RUN  apt-get install -y vim
    CMD  echo "hello"
    ENTRYPOINT echo "hello"
   //shell格式执行的话,能识别比如$name=abc这样的参数替换

  EXEC格式
   RUN ["apt-get","install",.....]   //通过逗号分隔
   ENV name docker
   ENTRYPOINT["/bin/bash","-c","echo hello $name"]

12 ENTRYPOINT  //一般让容易以应用程序用服务形式执行,一定会执行;
13 docker push xxx/xxxx ;   //发布
    docker pull  xxx/xxxx    //推送
  分享dockerfile:
    可以关联github上的库,dockerhub服务器从GITHUB上BUILD,等于DOCKERHUB帮你BUILD了,
其他人更信服

14 docker search java //搜索



15 docker run -d -p 91:80 nginx
    就是启动一个NGINX容器,-d  后台运行   -p 宿主机端口:容器端口
  则访问http://docker宿主IP:91  就等于访问NGINX的80
  
分享到:
评论

相关推荐

    Docker初级小结以及命令

    Docker初级小结以及命令

    docker-修改容器挂载目录的3种方法小结

    1、停止docker服务 systemctl stop docker.service(关键,修改之前必须停止docker服务) 2、vim /var/lib/docker/containers/container-ID/config.v2.json 修改配置文件中的目录位置,然后保存退出  “Mount...

    docker入门——思维导图

    "docker入门" Docker是容器技术,解决了容器环境迁移的问题。...小结 Docker是一个强大的容器技术,解决了容器环境迁移的问题。它可以将应用程序和依赖项封装在一个容器中,使得应用程序可以在不同的环境中运行。

    宝塔docker安装swoole小结

    宝塔docker swoole

    Docker容器.xmind

    Docker容器技术是学习虚拟化的必经之路,对此有一个更深刻的认知,思维导图是离不开的一种手段

    docker部署mysql8教程

    小结 本教程详细介绍了使用 Docker 部署 MySQL 8 的步骤,包括拉取镜像、创建配置文件和数据挂载目录、启动容器和创建用户等步骤。使用 Docker 部署 MySQL 8 可以轻松地部署和管理 MySQL 数据库。

    创建docker容器,配置容器ip桥接,在容器内安装tomcat

    Docker 容器网络配置与 Tomcat 安装 ...六、 小结 通过本文,我们学习了如何创建 Docker 容器,配置容器 IP 桥接网络,并在容器内安装 Tomcat 服务。这种方法可以帮助我们快速部署和管理应用程序。

    Linux运维-运维课程MP4频-06容器编排(k8s)-day02-11-11-08-docker存储驱动小结.mp4

    Linux运维-运维课程MP4频-06容器编排(k8s)-day02-11-11-08-docker存储驱动小结.mp4

    Docker service命令详解(小结)

    主要介绍了Docker service命令详解(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    Docker常用的清除容器镜像命令小结

    Docker 是一个非常有趣的项目。它自己宣称可以减轻部署服务器的难度,当然我相信里面有炒作的成分。但是实际使用后,我觉得 Docker 的表现还是可圈可点的。这篇文章主要总结了Docker清除容器镜像常用的命令,下面来...

    win10家庭版安装docker遇到的问题小结

    1.首先我直接下载了docker for windows,安装时才发现win10家庭版不支持hyper-v功能,只有专业版才有,不能直接安装docker,需要通过docker toolbox安装,于是乎去下载了docker toolbox再来安装 2.安装时有一串可选...

    浅谈Docker 容器数据卷挂载小结

    1. 数据卷挂载概念 在Docker中,数据卷是独立于容器生命周期的持久化存储方式,它允许用户将宿主机的目录或文件以某种方式挂载到容器内部,实现数据的持久化、共享和备份。数据卷的挂载可以在创建容器时通过docker ...

    Docker安装nginx和修改配置方法.docx

    小结 在本文中,我们介绍了如何使用 Docker 安装 nginx 服务器,并修改其配置文件。我们还了解了 Docker 的一些基本概念和命令,例如拉取镜像、启动容器、查看容器状态等。通过本文,我们可以更好地理解 Docker 和 ...

    Docker容器技术-走近容器世界.pptx

    小结 ---- Docker容器技术是近年来最火热的技术之一,它可以将任何类型的应用程序及相关依赖打包成为一个标准的、轻量的、便携的、独立的集装箱(也就是容器),它是一种轻量级的操作系统级虚拟化技术。容器技术的...

Global site tag (gtag.js) - Google Analytics