Docker基础
1.🐋简介
Docker是一个开源的应用容器引擎
Docker可以将配置完成软件的编译成一个镜像然后发布出去,这样其他使用者就可以在他们的Docker中使用这个已经配置好的镜像,不需要重新安装和配置
运行中的镜像被称为容器,容器启动非常快速
2.Docker核心概念
- Docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上)
- Docker客户端(Client):连接Docker主机进行操作
- Docker仓库(Registry):用来保存各种打包好的软件镜像
- Docker镜像(Images):打包好的镜像,放在Docker仓库中
- Docker容器(Container):镜像启动以后的实例称为一个容器,容器时独立运行的一个或者一组引用
使用Docker的步骤:
- 安装Docker
- 去Docker仓库找到这个软件对应的镜像
- 使用Docker运行这个镜像,这个镜像会生成一个Docker容器
- 对容器的启动停止就是对软件的启动停止
3.安装Docker
开机自动启动Docker
systemctl enable docker
4.常用操作
镜像操作
操作 | 命令 | 说明 |
---|---|---|
检索 | docker search 关键字 | 在docker hub中检索镜像信息 |
拉取 | docker pull 镜像名:tag | tag可选,为版本号,默认latest |
列表 | docker images | 查看所有本地镜像 |
删除 | docker rmi image-id | 删除指定的本地镜像 |
容器操作
软件镜像--->运行镜像--->产生一个容器(正在运行的软件)
操作 | 命令 | 说明 |
---|---|---|
运行 | docker run --name container-name -d image-name eg:docker run –name myredis –d redis |
--name:自定义容器名 -d:后台运行 image-name:指定镜像模板 |
列表 | docker ps (查看运行中的容器); |
加上-a;可以查看所有容器 |
停止 | docker stop container-name/container-id |
停止当前你运行的容器 |
启动 | docker start container-name/container-id |
启动容器 |
删除 | docker rm container-name/container-id |
删除容器 |
端口映射 | -p 6379:6379eg:docker run -d -p 6379:6379 --name myredis docker.io/redis |
-p:主机端口(映射到)容器内部的端口 |
容器日志 | docker logs container-name/container-id |
-d:容器会在后台运行并不会把输出的结果 (STDOUT) 打印到宿主机上面(输出结果可以用 docker logs
查看)
PS:一个镜像可以产生多个容器,每个容器单独运行,互不干扰
5.配置Mysql
-
下载镜像
docker pull mysql
-
创建数据卷
docker volume create mysql-vol
-
启动容器,将实际路径跟数据卷映射并将主机的3306跟容器的3306端口映射
docker run --rm -d -e MYSQL_ROOT_PASSWORD=123456 \ -v mysql-vol:/var/lib/mysql \ -p 3306:3306 mysql