千家信息网

怎样快速入门Docker

发表于:2024-09-24 作者:千家信息网编辑
千家信息网最后更新 2024年09月24日,怎样快速入门Docker,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。我们以使用Docker的方式安装MySQL为例,快速体会Doc
千家信息网最后更新 2024年09月24日怎样快速入门Docker

怎样快速入门Docker,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

我们以使用Docker的方式安装MySQL为例,快速体会Docker的基本操作

1、镜像操作

1、下载镜像 docker pull mysql

#我们应该先去Docker Hub寻找我们感兴趣的镜像docker pull image_name[:Tag]#1、tag一般为镜像的版本,不指定默认下载latest版本#2、默认镜像是从Docker Hub下载,国内比较慢,推荐使用自己的阿里云加速sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-'EOF'{  "registry-mirrors": ["https://82m9ar63.mirror.aliyuncs.com"]}EOFsudo systemctl daemon-reloadsudo systemctl restart docker

  • 以上下载过程看出,镜像是分层的(Layer)。c499e6d256d6是当前层的唯一id(完整的id为256bit,64个十六进制字符组成)。

  • 不同的镜像如果有相同的层,本地只会存储一份,减小了存储空间

  • 严格说,下载镜像需要制定指定仓库名称,不过从Docker Hub下载的可以忽略前缀。如

  - docker pull **docker.io/library/**mysql:5.7

2、列出镜像 docker images

docker images

REPOSITORY:来源于哪个仓库

TAG:镜像版本标签信息

IMAGE ID :镜像唯一id

CREATED:镜像最后更新时间

SIZE:镜像大小

3、查看详情 docker inspect

docker inspect image_name[:tag]docker inspect image_id

4、删除镜像 docker rmi

docker rmi image_name[:tag] 或者 docker rmi image_id

5、理解镜像

1、疑问一:

Docker每一个容器都是一个完整的这个应用的运行环境。所有应用最起码的基本环境是linux

SB微服务做成镜像。基本环境就是java环境,

如果我下载了100个镜像,启动了100个容器。100个linux在运行?

UFS:特点;git。增量记录文件改变。分层系统。需要经常读写变化的,只在变化层。

2、容器操作

1、启动容器

#docker run [OPTIONS] IMAGE [COMMAND] [ARG...] 常用选项-d  守护态运行-p  Publish a container's port(s) to the host ( container和host端口映射)-i  以交互模式运行容器,通常与 -t 同时使用-t  为容器重新分配一个伪输入终端,通常与 -i 同时使用--name="nginx-lb"  为容器指定一个名称-v, --volume value  Bind mount a volume (default [])
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name hello-mysql mysql:5.7#查看所有运行中的容器docker ps #查看所有容器docker ps -a
#docker create 和 docker run的区别docker create -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name hello-mysql mysql:5.7#create新建容器,run新建并启动。create相当于 run -d设置

2、进入容器

#docker exec  [OPTIONS] CONTAINER COMMAND [ARG...]#Run a command in a running containerdocker exec -it hello-mysql /bin/bash       #尝试连接MySQLmysql -uroot -p123456
#扩展docker exec -d hello-mysql touch /hello.txtdocker exec -it hello-mysql mysql -uroot -p#删除docker rm container_id/container_name#查看运行日志docker logs container_id/container_name

3、其他命令 Docker 命令手册

5、可视化 Portainer(先用这个)

docker run -d -p 8088:9000 \--restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer

Rancher(CI/CD再用这个)

#安装rancher-serverdocker run --name rancher-server -p 8000:8080 -v /etc/localtime:/etc/localtime:ro  -d  rancher/server#安装agentdocker run --rm --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.2.11 http://39.101.191.131:8000/v1/scripts/D3DBD43F263109BB881F:1577750400000:7M0yBzCw4XSxJklD7TpysYIpI

关于怎样快速入门Docker问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

0