欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Docker学习(一)

程序员文章站 2024-03-12 14:05:50
...

一、概念

1.image(镜像)

docker把应用程序以及其依赖,打包在image文件里面,docker容器是通过运行image生成的实例,同一个image文件可以生成多个容器实例。

2.container(容器)

container是一个docker的运行实例,也叫做容器,本身也是一个文件,可以理解容器实例就是通过渲染运行image镜像之后才产生的。值得注意的是生成容器之后,关闭容器不会删除该容器文件,该容器文件之后停止运行了而已。

二、基础命令

1.安装docker:

sudo yum install docker-ce docker-ce-cli containerd.io

2.提高下载速度:

新建文件:/etc/docker/daemon.json,然后添加如下json,重启docker即可永久选择国内镜像。
{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}

3.镜像操作

查看当前本地镜像列表

$ docker images
-a 所有的

查看远程相关镜像镜像

$ docker search 镜像名字
例如:docker search mysql:5.7.3
docker search -s 100 ubntu:找出start数超过100的镜像,默认不加-s

拉取镜像到本地

$ docker pull 镜像名字
例如:docker pull mysql:5.7.3

删除镜像(当存在多个名字一样的镜像时候,可以通过指定tag方式来操作,如ubuntu:16.04)

 docker rmi 镜像名字

推送镜像到库

$ sudo docker push 192.168.0.100:5000/ubuntu # 推送镜像库到私有源[可注册 docker 官方账户,推送到官方自有账户] 

$ sudo docker push 192.168.0.100:5000/ubuntu:14.04 # 推送指定镜像到私有源 

运行镜像

$ docker run 镜像名字
		p:指定映射端口,如运行一个nginx服务,那么我可以设置 -p 8080:80来把本地的8080端口映射到容器里的80端口。
		d:容器作为一个守护进程去进行运行,也就是保持后台运行,运行后会返回cotainer id。


例如:docker run -t -i ubuntu:14.04  -d --name myubuntu /bin/bash
			docker run - 运行一个容器
			-t - 分配一个(伪)tty (link is external)
			-i - 交互模式 (so we can interact with it)
			ubuntu:14.04 - 使用 ubuntu 基础镜像 14.04
			/bin/bash - 运行命令 bash shell

4.容器操作

创建一个docker容器,返回容器的id

$ docker create 镜像名字

运行docker容器

$ docker start 容器id

停止容器

$ docker stop 容器id

查看当前运行的docker容器

$ docker ps

查看全部的docker容器

$ docker ps -a

删除容器

$ docker rm 容器id

5.容器与镜像之间的操作

终端连接到容器

$ docker exec -i -t 容器id bash

复制文件到容器里面

$ docker cp index.html 镜像id://usr/share/nginx/html

保存更改并生成为一个新的image文件

$ docker commit -m "mess" 镜像id 镜像名字
相关标签: docker基础 docker