1.安装docker
首先查看电脑系统的内核,因为docker对内核有要求,
uname -a
sudo apt-get install -y docker.io
2.启动docker
systemctl start docker
3.docker的查看命令
- 查看版本
docker version
2.查看有什么docker镜像版本
sudo docker search ubuntu
3.查看本地的docker镜像版本
sudo docker images
4.下载想要的docker镜像
sudo docker pull ubuntu:16.04 //如果不写冒号和后面的版本号,会下载最新的版本
可能会遇到问题.
Error response from daemon: Get https://registry-1.docker.io/v2/: dial TCP: lookup registry-1.docker.io on 192.168.65.1:53: no such host
解决方法:
Open config file
sudo vim /etc/resolv.conf
and add the following under existing nameservers
nameserver 8.8.8.8
nameserver 8.8.4.4
run following commands to restart daemon and docker service
sudo systemctl daemon-reload
sudo systemctl restart docker
5.创建docker容器
sudo docker create ubuntu:16.04
6.创建并运行docker容器
sudo docker run -i -t ubuntu:14.04 /bin/bash //这个命令执行一次就会创建一个新的容器
//或者 docker run -i -t -v /root/software/:/mnt/software/ 25c5298b1a36 /bin/bash
-i:表示以“交互模式”运行容器
-t:表示容器启动后会进入其命令行
-v:表示需要将本地哪个目录挂载到容器中,格式:-v <宿主机目录>:<容器目录>
PS: 如果要下软件 先进行apt-get update
7.退出容器
exit
//查看运行中的docker docker ps
//查看全部的docker docker ps -a
8.用我们的docker创建新的镜像
docker commit 57c312bbaad1 huangyong/javaweb:0.1
或者
docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2
-m:提交的描述信息
-a:指定镜像作者
e218edb10161:容器ID
runoob/ubuntu:v2:指定要创建的目标镜像名
//该容器的 ID 是“57c312bbaad1”,所创建的镜像名是“huangyong/javaweb:0.1”,随后可使用镜像来启动 Java Web 容器。
docker run -i -t -d -p 58080:8080 --name javaweb huangyong/javaweb:0.1 /root/run.sh //run.sh自己写的,这个命令会产生新的容器.因为我们commit之后的就相当于一个系统镜像了.
-d:表示以“守护模式”执行/root/run.sh脚本,此时 Tomcat 控制台不会出现在输出终端上。在后台运行
-p:表示宿主机与容器的端口映射,此时将容器内部的 8080 端口映射为宿主机的 58080 端口,这样就向外界暴露了 58080 端口,可通过 Docker 网桥来访问容器内部的 8080 端口了。
--name:表示容器名称,用一个有意义的名称命名即可。
9.docker的其他命令
启动已经运行过的docker容器
docker start NAME/ContainerID
访问后台的容器
sudo docker exec -it c6db970eb81f /bin/bash //c6*是容器ID
查看后台运行的docker的日志
docker logs -f NAMES/ContainerID
// -f 表示这个日志动态打印
停止后台的容器
docker stop NAME/ContainerID
查看指定容器的端口
docker port NAME/ContainerID
docker top 来查看容器内部运行的进程
docker top NAME/ContainerID
移除一个容器
docker rm NAME/ContainerID
10.将自己创建的docker镜像导出
使用docker save 命令
sudo docker save -o /images/javaweb.tar test/javaweb
目录和文件名, 镜像名
11.载入自己的docker镜像
sudo docker load < javaweb.tar