Docker 实战

目录

一、常用操作

1、镜像创建

2、镜像查询

3、镜像删除

4、镜像运行

5、查询容器进程

6、查询容器执行日志

7、删除容器

8、进入容器

二、导入和导出

1、save 和 load

2、export 和 import

3、区别

三、案例

1、检查是否安装依赖

2、安装依赖

 3、docker打包镜像

 4、镜像运行

5、查看程序启动日志


一、常用操作

1、镜像创建

docker builder -t {IMAGE NAME} .

-t # 镜像名称及标签
. # 表示需创建镜像的路径

2、镜像查询

docker images

3、镜像删除

docker rmi {IMAGE ID}

4、镜像运行

docker run --name {DOCKER NAME} -d -p {serverPort:containPort} {IMAGE TAG}

--name # 运行名称
-d # 后台运行
-p # 端口映射,宿主机端口(映射到外部的端口): docker容器端口(容器内程序运行的端口) 外部访问的是宿主机端口。

5、查询容器进程

 docker ps

6、查询容器执行日志

docker logs -f {DOCKER ID}

7、删除容器

docker rm -f {CONTAINER ID}

-f # 强制删除

8、进入容器

docker exec -it {CONTAINER NAME} bash

二、导入和导出

1、save 和 load

## 保存镜像
docker save {IMAGE TAG}/{IMAGE ID} > xx.tar
# 或
docker save > xx.tar {IMAGE TAG}/{IMAGE ID}

# 多个镜像打包成一个文件
docker save -o xxs.tar a:version b:version


## 载入镜像
docker load --input xx.tar
# 或
docker load -i xx.tar
# 或
docker load < xx.tar

2、export 和 import

## 导出镜像
docker export {IMAGE TAG}/{IMAGE ID} > xx.tar

## 导入镜像
docker import {NEW IMAGE NAME} < xx.tar

3、区别

类型

文件大小

支持重命名

支持多个

包含镜像历史

场景

save

load

不可支持

支持

包含,可回滚到之前的层

部署服务器无法连外网

export import

支持

不支持

不包含,仅保存容器当时的快照

基础镜像制作

三、案例

.net core 对 Service.sln 项目生成的程序创建镜像并测试。

生成的 release 文件都需要上传到 linux 上。 

1、检查是否安装依赖

yum search aspnetcore

# 要是提示没有找到相应包,执行以下命令,更新资料库

sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm

2、安装依赖

        如果需要linux开发,需要安装sdk,否则,只需要安装依赖包即可。

# 6.0 是版本号
yum install -y aspnetcore-runtime-6.0

        查看是否安装成功!

dotnet --info

 3、docker打包镜像

        需要先把程序打包好,上传linux上,并创建 Dockerfile 文件,输入以下脚本

FROM mcr.microsoft.com/dotnet/aspnet:6.0
WORKDIR /app
EXPOSE 5001

COPY . /app
ENTRYPOINT ["dotnet","Service.dll"]

         执行打包命令

docker build -t myService .

         检查打包镜像是否成功

docker images

 

 4、镜像运行

docker run --name myService -d -p 5001:80 myService:latest

         检查是否启动成功

docker ps

5、查看程序启动日志

docker logs 71698114a7e1

 这里显示的和vs上启动是一致的,也没有明显报错,说明程序启动成功!

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值