Docker简单使用
Docker
使用Docker的步骤
- 安装docker
- 去docker仓库找到这个软件对应的景象
- 使用Docker运行这个镜像,这个镜像就会生成一个Docker容器
- 对容器的启动停止就是对软件的启动停止
安装Docker
1.安装linux虚拟机
2.在linux虚拟机上安装docker
安装步骤
1.Docker要求centos系统的内核版本高于3.10
通过uname -r
命令查看当前的内核版本
2.使用root权限登录,保证yum包更新到最新
sudo yum update
3.卸载旧版本(如果安装旧版本的话)
sudo yum remove docker | docker-common docker-selinux docker-engine
4、安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
[root@localhost ~]#sudo yum install -y yum-utils device-mapper-persistent-data lvm2
5、设置yum源
[root@localhost ~]#sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
这个源是国外网站的,有可能会很慢,可以改成阿里云提供的镜像,二者执行一个即可:
[root@localhost ~]#sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
6、可以查看所有仓库中所有docker版本,并选择特定版本安装
[root@localhost ~]#yum list docker-ce --showduplicates | sort -r
7、安装docker
[root@localhost ~]#sudo yum install docker-ce #这里安装的是最新稳定版18.09.6
[root@localhost ~]#sudo yum install <FQPN> # 例如:sudo yum install docker-ce-17.12.1.ce
8、启动并加入开机启动
[root@localhost ~]#sudo systemctl start docker
[root@localhost ~]#sudo systemctl enable docker
9、验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
[root@localhost ~]#docker version
10、停止docker
[root@localhost ~]#sudo systemctl stop docker
Docker常用命令&操作
注:如果拉取镜像慢则访问这个网站寻找解决方法
1.搜索镜像
docker search mysql
2.删除镜像(根据容器id删除)
docker rmi d1dc36cf8d9e
3.查看本地所有镜像
docker images
4.拉取镜像
docker pull tomcat
5.运行容器
docker run --name mytomcat -d tomcat
mytomcat :别名
6.查看运行中的容器(-a 查看所有容器)
docker ps (-a)
7.启动容器
docker start "容器id"
8.停止运行中的容器
docker stop "容器id"
9.删除一个容器
docker rm "容器id" //删除容器。注:删除前,应停止容器运行
注意:镜像的删除是rmi 根据id删除
容器的删除是rm 根据id删除
镜像理解成软件
镜像启动容器
将docker端口映射出
docker run -d -p 8888:8080 tomcat
安装mysql示例
docker pull mysql
docker run --name mysql1 -d mysql
//mysql1为容器别名
直接启动mysql会报错:
2022-02-16 13:31:05+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.28-1debian10 started.
2022-02-16 13:31:05+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2022-02-16 13:31:05+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.28-1debian10 started.
2022-02-16 13:31:05+00:00 [ERROR] [Entrypoint]: Database is uninitialized and password option is not specified
You need to specify one of the following:
- MYSQL_ROOT_PASSWORD
- MYSQL_ALLOW_EMPTY_PASSWORD
- MYSQL_RANDOM_ROOT_PASSWORD
一般选择第三个启动
docker run --name 9921e05dcab9 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
//9921e05dcab9:容器id
端口映射
docker run -p 3306:3306 --name mysql00 -e MYSQL_ROOT_PASSWORD=1234 -d mysql
第一次使用docker时可能会出现的几个小问题
-
[解决Docker启动Tomcat容器,访问404(防火墙已经关闭) - 张三张三 - 博客园 (cnblogs.com)](https://www.cnblogs.com/jiabowenn/p/15902746.html)
-
[解决sqlyog远程连接mysql:Client does not support authentication protocol reuested by server;consider upgrading Mysql client]https://www.cnblogs.com/jiabowenn/p/15902752.html