1. 环境准备
首先安装了VMware和ubuntu虚拟机,版本如下
- VMware-workstation-full-15.5.0
- ubuntu-24.04-live-server-amd64.iso
2. 解决几个开始使用docker前的小问题
2.1 配置ssh远程访问
运行命令打开网络配置文件(命令)
cd /etc/netplan/
vi 00-installer-config.yaml # 这里的名字可能不一样
修改内容如下(注意换行和空格,一定要对准):
注意:这里的192.168.79.2是我的网关,在VMware网络查看器可以查看你自己的网关,192.168.79.5是我给虚拟机配置的IP,用于远程连接使用,虚拟机网络使用nat模式。
使配置生效(命令):
netplan apply
接下来就可以使用远程工具访问了,这里使用的是putty
2.2 远程传文件到Linux
2.2.1 最直观的方式:使用FileZilla,输入IP,用户名,密码,直接22端口连接,拖拉拽就可以传文件到指定位置
2.2.2 命令行的方式:scp [-r 如果是文件夹加上此选项] <本地文件路径> <远程服务器用户名>@<远程主机IP或域名>:<远程服务器要存放该文件的路径>
scp -r .\kubernetes\ root@192.168.79.5:/home
很简单就是----------scp 文件的位置 【空格】目标位置
注意的是本地可以是相对路径也可以是绝对路径
远端需要:用户名@IP:路径
-r 的意思是整个文件夹复制
3. 开始我们的docker
3.1 安装docker
首先我将下载好的docker解压(解压后有6个.deb文件)
运行安装命令安装docker
dpkg -i *.deb
这样我们的docker就可以愉快的跑起来了
3.2 docker基本命令
docker info # 查看信息
docker images # 查看本地镜像列表
docker ps # 查看正在运行的docker
docker search 镜像名 # 查询docker镜像
docker pull nginx:latest # 拉取docker镜像,这里拉取的是Nginx
docker run -d -p 8080:80 nginx:latest
# -d 后台运行 -p docker内部80端口映射到Linux的8080
docker stop 容器ID # 停止运行 或者 使用docker kill 容器ID
docker rmi -f 镜像ID/镜像名 # 删除镜像(先停止运行再删除)
docker exec -it 容器ID bash # 进入运行中的镜像,可以查看内部文件
3.3 设置阿里云加速docker镜像拉取
创建配置文件daemon.json
cd /etc/docker
vi daemon.json
写入配置
{
"registry-mirrors":[
"https://rsbud4vc.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"https://docker.mirrors.ustc.edu.cn",
"https://dockerhub.azk8s.cn",
"http://hub-mirror.c.163.com"
]
}
重启docker使配置生效
systemctl restart docker.service
这样再去pull拉取时,速度就会快很多!
3.4 如何将自己的东西打包一个容器(docker镜像)
我们拉取的镜像默认是没法修改的,使用docker cp 可以临时修改,但是重启后回丢失,所以我们的目的就是通过修改docker里面的内容,构建一个我们自己应用的docker镜像,这样就可以部署自己的应用了,下面开始:
首先,明确我们要做什么
# 将我们自己写的index.html 替换nginx:latest镜像中的index.html
# 来构建我们自己的静态网站
这是我们创建的index.html
这是我们创建的Dockerfile文件(文件名可以任意)
然后放到同一个目录下
执行构建命令:
docker build -t nginx:1.0 -f Dockerfile .
# 注意这里的nginx:1.0 是新的docker的镜像名字
# 另外Dockerfile后面有一个英文的点(注意空格)
这就构建好我们自己的镜像了
来查看一下吧
运行一下吧
浏览器查看运行结果
3.5 如何将自己的容器复制给朋友使用
三步搞定复制docker给另一台机器
- 将docker镜像打压缩包成文件
- 将压缩包copy给另一台机器
- 加载镜像到系统
打包:
docker save nginx:1.0 -o myimage.tar
# 注意这里一定要 tar压缩包,名字可以任意
加载:
docker load -i myimage.tar
4. 总结
(本教程适合初学者,甚至Linux不太懂也可以一步一步实现,重点是docker命令,更多都是环境部署的,但对初学者可以入门了)
今天初步学习了docker的安装与使用,其实还有很多细节东西需要慢慢琢磨,但是框架已经搭建好了。既然从入门到上手了,那就多多联系就行了,相信大神之路马上就可以开启了,加油加油!