docker 入门(1)

1,docker 的安装卸载 

https://docs.docker.com/install/linux/docker-ce/ubuntu/

2,docker中的基本概念

  • 镜像(Image)
  • 容器(Container)
  • 仓库(Repository)

1)镜像就相当于安装系统时所需的系统镜像。

2)容器就相当于正在运行中的虚拟机。

3)tar文件类似于VMware中vmdk文件,使用时可以把镜像保存(save指令)为tar文件,移动后可以直接把tar文件加载(load指令)为镜像。

4)dockerfile文件相当于配置文件,内容是镜像的构建步骤等,通过build指令来构建出镜像。

5)仓库中保存了各种镜像(例如MySQL镜像,Tomcat镜像等等),我们可以很方便的下载(pull指令)到本地使用,也可以吧自己的镜像push到仓库。

 3,基本的操作命令

从仓库下载所需的镜像
docker pull nginx 相当于docker pull nginx:latest 即从仓库下载最新的nginx

查看本地的镜像
docker images

 

运行镜像得到容器
docker run -d -p 80:80 nginx
-d 后台运行
-p 指定内外的端口映射
--name 指定容器的名字
-v 'pwd':/usr/share/nginx/html 把当前目录映射到容器里的这个目录,这样就可以把一些文件放到容器外,方便修改

 这一串字母数字就是容器的ID

查看正在运行的容器有哪些
docker ps

访问192.168.91.138:80,ip是ubuntu的ip

可以再用这个镜像运行一个容器
docker run -d -p 81:80 nginx

 

进入容器
docker exec -it 容器的ID bash
容器ID可以只写前几个字符,能和其他容器区分即可

 

从命令行可以看到已经进入了ID为7a开头的这个容器

修改这个nginx容器中的index文件
cd /usr/share/nginx/html/

 

修改index.html中的内容

 

退出容器
exit

 

删除容器
docker rm -f 容器id

 

容器通过commit命令得到镜像
docker commit 容器id 给镜像取的名字
再通过docker images命令看本地的镜像就会有自己新生成的镜像了

 

创建Dockerfile文件
vim Dockerfile

例如写入如下内容

 FROM nginx (基于nginx镜像)
  ADD ./ /usr/share/nginx/html/(把当前目录下的文件拷贝到后面这个文件夹)

 

docker build -t 给要创建的镜像取的名字 . 
最后这个 点(.)是用当前目录下的dockerfile文件构建

 运行该镜像

 

把镜像保存到 .tar文件中
docker save image的名字 > name.tar

 

把dockerfileimage镜像删除,得先把用他创建的容器删除

 

利用.tar文件生成镜像
docker load < name.tar

 

详见B站视频  https://www.bilibili.com/video/av58402749?from=search&seid=713640718069258203

 

 

posted @ 2019-10-24 17:42  xdyixia  阅读(185)  评论(0编辑  收藏  举报