docker学习笔记

博主记录Docker学习笔记,因担心遗忘而整理。笔记包含entrypoint修改的详细教程,还提及使用dive工具探索镜像中的内容,学习参考了其他大佬写好的详细信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习网址
详细的信息,大佬们已经写好了,我就发表一下自己的笔记,不然过一个月后我会基本忘记的

笔记


# 获取镜像
docker pull ubuntu:18.04

# 列出已经下载的镜像(-a显示中间层)
docker image ls [-a]
# 列出悬虚镜像(-f为过滤器)
docker image ls -f dangling=true
# 列出id
docker image ls -q

# 输出后台运行结果
docker container logs 容器名字
# 容器列出
docker container ls [-a]
docker container ls --no-trunc(完整字符串)

# 删除悬虚镜像
docker image prune
# 删除镜像
docker image rm id号前几位

# 运行镜像
docker run -it --rm ubuntu:18.04 bash(i可输入t伪终端--rm结束删除容器bash交互bash)
docker run --name webserver -d -p 80:80 nginx(用nginx启动容器命名为webserver)
docker run -d ubuntu:18.04(后台运行)

# 进入容器
docker exec -it 容器名字 bash
docker attach 容器名字

# 容器保存为镜像
docker commit \
    --author "Tao Wang <twang2218@gmail.com>" \
    --message "修改了默认网页" \
    webserver \
    nginx:v2
#启(重启)动已经存在的容器
docker container start 容器名字
docker container restart 容器名字

# 导出容器
docker export 7691a814370e > ubuntu.tar
# 导入容器快照
cat ubuntu.tar | docker import - test/ubuntu:v1.0
docker import http://example.com/exampleimage.tgz example/imagerepo

# 镜像、容器、数据卷所占用的空间
docker system df
# 查看镜像内历史
docker history name
# 查看存储层具体改动
docker diff name
# 定制镜像
mkdir mynginx
cd mynginx
echo 'FROM nginx\nRUN echo "<h1>hello! my nginx</h1>" > /usr/share/nginx/html/index.html' > Dockerfile
docker build -t nginx:v3 . (-t指定镜像名称)

1.FROM 镜像名称
2.RUN  cmd (每运行一个run增加一层,所以应当尽量减少run,cmd采用&&分割多个命令\换行)
3.COPY tmp /usr/share/nginx/html/ (当前目录下的tmp拷贝到镜像中的/usr/share/nginx/html/下)
4.ADD=>COPY的升级包括自动解压缩等
5.CMD echo $HOME (命令不应该结束主进程)
6.WORKDIR /app (相当于shell中的cd,workdir区别于run的是不会开启新的容器)
7.USR(类似于workdir,但是为切换用户)

entrypoint修改
详细教程
探索镜像中的内容–dive

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值