Docker(一)——————Docker简介、Docker安装使用、Docker安装Mysql

  • Docker是什么?

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低。

Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像。运行中的这个镜像称为容器,容器启动是非常快速的。类似windows里面的ghost操作系统,安装好后什么都有了;

  • Docker核心概念

docker镜像(Images):Docker 镜像是用于创建 Docker 容器的模板。
       docker容器(Container):容器是独立运行的一个或一组应用。
       docker客户端(Client):客户端通过命令行或者其他工具使用
       Docker API(https://docs.docker.com/reference/api/docker_remote_api)与 Docker 的守护进程通信
       docker主机(Host):一个物理或者虚拟的机器用于执行Docker 守护进程和容器。
       docker仓库(Registry):Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。
       DockerHub(https://hub.docker.com) 提供了庞大的镜像集合供使用。

  • Docker安装

1)、安装虚拟机Linux系统

2)、安装docker:yum install docker

3)、启动docker:systemctl start docker

如果启动报错:Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.

解决方法:

1.卸载docker:yum remove docker-*

2.更新Linux内核版本:yum update

3.然后重启虚拟机,重新装docker 启动

4)、设置开机启动:systemctl enable docker

5)、停止docker:systemctl stop docker

  • Docker镜像操作

1)、搜索:docker search mysql

https://hub.docker.com

2)、拉取:docker pull mysql

也可以拉取指定版本的镜像:docker pull mysql:5.5

3)、查询当前有多少镜像:docker images

4)、删除镜像:docker rmi d404d78aa797(IMAGE ID)

 

 

  •  Docker容器操作

软件镜像————运行镜像————产生一个容器

更多命令操作:https://docs.docker.com/engine/reference/commandline/docker/

以Tomcat为例对容器进行操作

1)、搜索Tomcat镜像:docker search tomcat

 2)、拉取镜像:docker pull tomcat

3)、运行:docker run --name mytomcat -d tomcat:latest

4)、查看运行的容器:docker ps

这里访问Tomcat是访问不到的。因为访问虚拟机的8080端口是访问不到docker的8080端口。需要作映射

端口映射的容器启动:docker run -d -p 8888:8080 tomcat

-d:后台运行

-p:将主机端口映射到容器端口   主机端口:容器端口

5)、停止运行中的容器:docker stop CONTAINER ID

6)、查看所有的容器:docker ps -a

7)、启动已经存在的容器:docker start 39e34738b13b(CONTAINER ID)

8)、删除停止的容器:docker rm 39e34738b13b(CONTAINER ID)

9)、查看启动日志:docker logs 5d3ba88636bb(CONTAINER ID)

  • Docker Mysql安装

1)、搜索mysql:docker search mysql

2)、拉取Mysql:docker pull mysql

3)、查看容器中的mysql镜像:docker images

4)、启动mysql:docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql

-p:主机端口映射到容器端口

-e:设置参数

-d:后台运行

5)、远程工具连接即可

6)、进入mysql容器:docker exec -it bd990d0817f7(CONTAINER ID) bash

7)、还需要设置远程连接权限

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

发布了101 篇原创文章 · 获赞 10 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/WMY1230/article/details/104208262