关于docker的一些学习总结

首先理解docker是什么  网上说的都是很专业的什么镜像啊 vm啊   对于没有接触过运维和服务器的同学们很难理解啊(如果你是看不懂专业名词的前端同学 可以多看看下面的文字

所以我用我们前端的同学的话来总结一下docker是什么能做哪些事

首先很多的项目或者服务 或者说程序  都有特定的依赖环境 比如java需要java环境 node需要node环境 有些需要linux的环境 不然.sh脚本执行不了呀 

然后就有了docker 也就是他的好处  他可以不分环境的让所有的电脑都可以运行 一个服务 一个项目的启动

也就是很多专业说的镜像和容器  仓库就不细说啦  大家基本上都熟悉git  不熟悉的 评论我再回复哈

为了让所有的电脑环境都能执行一个项目启动 就需要制作一个镜像 可以把他理解为就是你的项目源文件 只不过是特殊的镜像文件同时间杂了环境文件 毕竟需要在任何地方都启动成功还是需要环境的  所以镜像就是有了这个环境了

有了文件 我们肯定是想启动某个服务的  不管前端还是后端服务 就是想启动一个服务 那就需要启动这个镜像 就是 容器啦

docker是可以本地就安装的  也是可以在服务器安装的  所以他的使用很简单  就是下载安装  然后把我们的项目(也可以是打包好的项目)  构建(变成)镜像文件 (执行一个命令 你可以理解为变成压缩包  然后任何地方都可以用这个压缩包启动项目啦)  启动镜像(启动服务)

docker 的一些命令

// 提前写好哦Dockerfile (如果需要写的话 再百度吧 这里我是用的别人写好的)  
docker build -t new(new是打的镜像名字) .  这里有个点(也可以指定文件名
// dockerfile的 有时候需要两个环境的dockerfile打包不同的镜像)

// 指定文件 docker build -t mytag-production -f Dockerfile.production .   
// . 是当前上下文环境

// Docker 运行   这个是启动dcoker这个软件 
sudo systemctl start docker

// 删除镜像   这时候没有相关容器 有的话先终止容器再 删除容器再删除镜像
sudo docker rmi   *** 镜像名字


// 启动镜像容器

docker run  -dit  --privileged=true   --restart=always  -p 3333:7777 **** 镜像id  
//  端口第一个是映射端口 第二个是服务端口  实际上启动的第二个 但是我们访问第一个端口 (有tag的话 //需要加上:tag) 两个映射的话 写两个-p ***:**  -p**:** 就可以了


// 停止容器
 docker  stop 容器id
//删除容器     
 docker rm 容器id 
// 启动 容器  //最好不用这个  少参数  (最好是关了 删了 重新启动一个新的容器 run 那个可以加// 
// restart always 参数)
Docker start 容器id  
// 修改
docker container update --restart=always  ***容器名字


将docker上传到服务器
https://blog.csdn.net/weixin_43124425/article/details/108106497

// 1 将镜像保存下来成压缩包的形式
 Docker  save 镜像名:版本号 >/root/镜像名.tar
 要加: >    后面得到是路径  c:/***/****.tar

// 2 长传到服务器 
使用winscp 或者堡垒机等等 上传一下
// 3 这个最好是在当前目录下操作没试别的目录情况下
 docker load -i 镜像名.tar


// 打印日志
$ docker logs -f 773c5b4085cc

// 打印日志到文件
$ docker logs -f 773c5b4085cc  > c:/temp/a.txt

你可能感兴趣的:(docker,学习)