Docker本身并不是容器,它是创建容器的工具,是应用容器引擎 。
一. 想要搞懂Docker,其实看它的两句口号就行 :
第一句,是“Build, Ship and Run”。搭建、发送、运行 三板斧
第二句口号就是:“Build once,Run anywhere**(搭建一次,到处能用)**”
Docker 安装 CentOS 7 (使用yum进行安装)
- yum 包更新到最新
yum update
- 安装必要的一些系统工具(安装依赖组件包,需要的软件包, yum-util 提供yum-configmanager功能,另外两个是devicemapper驱动依赖的)
yum install -y yum-utils device-mapper-persistent-data lvm2
- 添加软件源信息 (设置yum源为阿里云 在哪里下载呢? )
yum-config-manager --add-repo http://mirrors.aliyun.com/dockerce/linux/centos/docker-ce.repo
- 安装Docker
yum -y install docker-ce
- 查看Docker版本
docker -v
- 启动Docker服务
systemctl start docker
Docker 常用命令
>查看当前docker中下载的镜像
>docker images
>查看当前启动的镜像
>docker ps
>启动镜像 (因启动命令参数过多,同时各种镜像启动时可以增加额外的参数,本次以启动mysql5.6为例)
docker run -p 本机映射端口:镜像映射端口 -d --name 启动镜像名称 -e 镜像启动参数 镜像名称:镜像版本号
参数释义:
-p 本机端口和容器启动端口映射
-d 后台运行
--name 容器名称
-e 镜像启动参数
停止镜像
docker stop 镜像实例ID
例:docker stop fe754db626db
当镜像实例已经存在时,重新启动镜像
docker start 镜像实例ID
例:docker start fe754db626db
查看Redis版本
docker exec -it myredis redis-server -v
myredis 为 redis在docker中的容器名称
进入容器并开启客户端查看redis信息
docker exec -it myredis bash
删除镜像实例
删除镜像实例
docker image rm 镜像实例ID
例:docker image rm fe754db626db
如果存在相同id 的镜像删除
删除 相同id 的docker镜像 使用repository:tag的组合来删除特殊的镜像
删除已经运行过的镜像使用 docker rm 539773f6c852
下载启动Docker UI
Portainer
1.查看dockerui Portainer镜像
>docker search Portainer
2.选择喜欢的风格镜像,下载
>docker pull docker.io/portainer/portainer
>3. 启动UI
>docker run -d -p 9000:9000 --restart=always -v
/var/run/docker.sock:/var/run/docker.sock --name prtainer-test
portainer/portainer
dockerUI
>docker search dockerui
2.选择喜欢的风格镜像,下载
>docker pull abh1nav/dockerui
>3. 启动UI
>docker run -d --privileged --name dockerui -p 9001:9000 -v
/var/run/docker.sock:/var/run/docker.sock abh1nav/dockerui
配置镜像加速器
>sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://0wrdwnn6.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
复制粘贴就可以
配置tomcat
下载Tomcat镜像
#docker pull 镜像组件 比如:
docker pull tomcat:8.5.49-jdk8-openjdk
创建tomcat容器
创建容器 -p表示地址映射
-v 是做宿主机和容器系统的目录映射,为什么要目录映射做,是因为:容器里的系统不能直接去上传文
件。
docker run -di --name=mytomcat -p 8081:8080 -v
/usr/local/webapps:/usr/local/tomcat/webapps tomcat:8.5.49-jdk8-openjdk
然后切入到 /usr/local/webapps
把应用放到webapps 文件中
打开浏览器即可访问
lrzsz
安装
yum -y install lrzsz
上传文件
rz
rz
下载文件
sz
sz filename
直接使用 rz 上传文件到服务器,或者使用其他工具都行
docker 镜像上传阿里云
首先登录阿里云 创建镜像仓库
在服务器中登录
输入密码
$ sudo docker tag [镜像ID] registry.cn-beijing.aliyuncs.com[图片所示以自己的为准]/命名空间名/上传到阿里云是仓库名:[镜像版本号]
$ sudo docker push 这就是刚才那一大堆
打开阿里云即可看到
下载时需要版本号,记清楚不然下载不下来 ,他会使用默认的latest代替。或者上传的时候不设置版本号,这个我没有测试不知道可不可以(只适合学习时使用)
想了解微服务+Docker+K8s 的可以来这个地方看一看
https://www.icodingedu.com/my/course/65