一.基本操作
1.uname -r -->查看内核版本3.14版本以上
2.sudo apt-get update -->更新linux
3.ubuntu16.04骤安装docker。
- sudo apt-get install docker
- sudo apt-get install docker.io
- sudo apt-get install docker-registry
- sudo systemctl start docker
- 开机启动docker —> sudo systemctl enable docker
4.docker的使用
- a.镜像的操作
1.获取查看镜像(检索) sudo docker search mysql (docker hup
2.下载镜像 sudo docker pull mysql 【 默认最新版本 sudo docker pull mysql:版本号 (TAG标签—版本号)】
3.查询已存在镜像 sudo docker images
4.删除镜像 sudo docker rmi IMAGE ID(镜像id); - b.镜像对应的容器操作
(软件镜像(安装包)—运行镜像—产生容器(产品)
运行一个镜像就产生一个容器;)
1.运行镜像
docker run --name(自定义容器名) xx -d(后台运行) 镜像名:TAG
sudo docker run --name myTomcat -d tomcat:9-jdk8
2.查看运行中的容器
sudo docker ps
3.停止运行中的容器
sudo docker stop (容器id/容器名)
若出现:Error response from daemon: cannot stop container: myTomcat: Cannot kill container dfe088ad60767fa64879647143f13a9f271c53ac41a0ef9779614a97a8859f05: unknown error after kill: runc did not terminate sucessfully: container_linux.go:388: signaling init process caused “permission denied”
: unknown
则:运行aa-remove-unknown
在删除即可;
4.查看所有容器(运行,非运行)
sudo docker ps -a
5.删除容器
sudo docker rm 容器id
6.运行容器
sudo docker start 容器id
7.启动端口映射的tomacat
sudo docker run -d -p 9999:8080 tomcat:9-jdk8
-d:后台运行
-p:将虚拟机的端口映射到容器的端口
(9999:虚拟机端口;
8080:tomcat端口
tomcat:9-jdk8:镜像)
8.查看容器日志
sudo docker logs 容器id;
9.进入容器
sudo docker exec -it 容器id bash
例子:启动mysql镜像
- 1.错误启动
sudo docker run --name mySQL -d mysql:5.5 (容器有问题)
获取日志:docker logs 容器id
错误日志信息:
error: database is uninitialized and password option is not specified
You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD
(没有指定密码) - 2.正确启动
-e 上面三个中的一个=密码(指定参数)
sudo docker run -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.5
端口映射:
sudo docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.5
遇到的问题:
1.进入docker容器内部,不能执行 apt-get update
需要在终端上执行代码:
mv /etc/apt/sources.list /etc/apt/sources.list.bak &&
echo ‘deb http://mirrors.163.com/debian/ jessie main non-free contrib’ > /etc/apt/sources.list &&
echo ‘deb http://mirrors.163.com/debian/ jessie-updates main non-free contrib’ >> /etc/apt/sources.list &&
echo ‘deb http://mirrors.163.com/debian-security/ jessie/updates main non-free contrib’ >> /etc/apt/sources.list
2.若在windows上需要进入docker创建的tomcat容器,需要进入对应的容器,然后进入后的里面就相当于我们windows上装的tomcat的一些文件.当我们需要进入管理界面的时候,和windows上一样的容器里面配置即可。