docker Ubuntu实战

目录

Ubuntu系统环境说明

一、如何安装docker

二、发布.netcore应用到docker中


Ubuntu系统环境说明

bash 复制代码
 cat /etc/os-release

PRETTY_NAME="Ubuntu 22.04.5 LTS"

NAME="Ubuntu"

VERSION_ID="22.04"

VERSION="22.04.5 LTS (Jammy Jellyfish)"

VERSION_CODENAME=jammy

ID=ubuntu

ID_LIKE=debian

HOME_URL="https://www.ubuntu.com/"

SUPPORT_URL="https://help.ubuntu.com/"

BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"

PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"

UBUNTU_CODENAME=jammy

一、如何安装docker

docker下载地址,本次安装没有用上:

Index of linux/ubuntu/dists/jammy/pool/stable/

bash 复制代码
在安装 Docker 之前,建议先更新系统的软件包。
sudo apt update
sudo apt upgrade -y

安装一些 Docker 需要的依赖库,如 apt-transport-https、ca-certificates 和 curl
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common

添加 Docker 的 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

运行以下命令,查看 Docker 软件源是否已正确添加:
cat /etc/apt/sources.list.d/docker.list
正确输出示例
deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu jammy stable

运行以下命令检查系统架构,知道架构才知道下载哪个包手动安装:
dpkg --print-architecture
bash 复制代码
上面白折腾了,最后我只用一句命令,就安装成功了:
apt install docker.io

docker --version
Docker version 24.0.7, build 24.0.7-0ubuntu2~22.04.1

二、发布.netcore应用到docker中

项目右键添加Docker支持

容器OS我这里只能看到Linux

默认生成的dockerfile需要精简成下面这样:

部署到docker,也是必须得编译:

发布包含Docker文件的项目

精简后的Dockerfile

bash 复制代码
# 请参阅 https://aka.ms/customizecontainer 以了解如何自定义调试容器,以及 Visual Studio 如何使用此 Dockerfile 生成映像以更快地进行调试。

# 此阶段用于在快速模式(默认为调试配置)下从 VS 运行时
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
WORKDIR /app
EXPOSE 8080

COPY . /app
ENTRYPOINT ["dotnet", "micro-task-api.dll"]
bash 复制代码
#执行docker镜像生成命令
docker build -t abc:1.0 /opt/dockertest/micro-task-api

docker可以运行起来了:

bash 复制代码
#根据ID删除镜像
docker rmi 591a25064268
bash 复制代码
#根据容器ID删除容器
docker rm 1501969d0152
相关推荐
可涵不会debug3 小时前
【IoTDB】时序数据库选型指南:工业大数据场景下的技术突围
数据库·时序数据库
ByteBlossom3 小时前
MySQL 面试场景题之如何处理 BLOB 和CLOB 数据类型?
数据库·mysql·面试
muyun28003 小时前
Docker 下部署 Elasticsearch 8 并集成 Kibana 和 IK 分词器
elasticsearch·docker·容器
麦兜*3 小时前
MongoDB Atlas 云数据库实战:从零搭建全球多节点集群
java·数据库·spring boot·mongodb·spring·spring cloud
Slaughter信仰3 小时前
深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)第十章知识点问答(10题)
java·jvm·数据库
麦兜*3 小时前
MongoDB 在物联网(IoT)中的应用:海量时序数据处理方案
java·数据库·spring boot·物联网·mongodb·spring
-Xie-4 小时前
Mysql杂志(十六)——缓存池
数据库·mysql·缓存
七夜zippoe4 小时前
缓存与数据库一致性实战手册:从故障修复到架构演进
数据库·缓存·架构
一个天蝎座 白勺 程序猿4 小时前
Apache IoTDB(5):深度解析时序数据库 IoTDB 在 AINode 模式单机和集群的部署与实践
数据库·apache·时序数据库·iotdb·ainode