粘的个人笔记,格式有点乱。勿在意
  1. core api程序包

发布直接部署包:

链接:https://pan.baidu.com/s/1zZe9H1Fevf7DdzfF-MJb9w
提取码:t0ai

源码:
链接:https://pan.baidu.com/s/1H_7rx39lPF3-kFPEEXN9eA
提取码:dwci
  1. 本地安装Docker Desktop已支持vs
    1. 下载地址https://desktop.docker.com/win/stable/Docker%20Desktop%20Installer.exe
  2. vs创建时选择则会在程序目录下自动生成Dockerfile(无扩展名)文件,如果是已有项目需手动创建该文件。
  1. 启动Docker Desktop
    1. 报错处理

  1. 配置linux的yum下载文件地址
备份源文件
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
删除原文件
rm -rf /etc/yum.repos.d/Centos-Base.repo
下载新配置文件(可以手动下载)
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
更新缓存
yum makecache
  1. 升级yum
yum update
  1. 卸载已安装的旧版本的docker
yum remove docker
  1. 配置docker下载地址
    1. 文件路径和CentOS-Base.repo文件路径一致(可手动下载)
    1. 更改docker镜像源地址为阿里云
sudo mkdir -p /etc/docker(已有路径忽略) sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://lxp17iod.mirror.aliyuncs.com"] } EOF
    1. 更新缓存
sudo systemctl daemon-reload sudo systemctl restart docker
    1. 安装docker依赖
列出可安装的docker版本
yum list docker-ce --showduplicates | sort -r
  1. 安装docker-ce
yum install docker-ce (yum -y install docker)
安装过程中提示选y继续安装
 
  1. 启动docker
systemctl start docker
Centos8默认安装docker的路径
docker默认安装目录:/var/lib/docker
  1. 配置docker开机启动
sudo systemctl enable docker
  1. 查看docker的版本
docker version
 
  1. 创建core api
    1. Dockerfile
        #基于mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim构建Docker Image
        #FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
 
        # 基于microsoft/dotnet:latest构建Docker Image
        FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim
 
        # 进入docker中的/usr/local/src目录
        RUN cd /usr/local/src
 
# 创建DockerWebAPI目录
RUN mkdir MyDocker
 
# 设置工作路径
WORKDIR /usr/local/src/MyDocker
 
# 将当前文件夹下的所有文件全部复制到工作目录
COPY *.* ./
 
# 向外界暴露6666端口
EXPOSE 6666
 
# 执行dotnet MyDocker.dll命令
CMD ["dotnet", "MyDocker.dll"]
    1. 指定程序端口
 
 
  1. 创建要执行程序的docker镜像,将core api发布后的文件拷贝到自定义目录,并进入该目录执行。
docker build -t mydocker:v1.1 .
解释:
mydocker 为你要定义的镜像名称(名称可能绑定不上)
v1.1 版本号
. 为该目录下的Dockerfile文件
 
修改镜像名称:docker tag imageid REPOSITORY:TAG
镜像创建失败的image
  1. 创建并启动docker容器
docker run -it --rm -d -p 5000:6666 --name 容器名称 镜像名称:tag
解释:
-p 5000:6666 外部访问端口:内部端口。注意内部端口号需要和程序内部指定的端口号一致
--name后跟的就是容器名称
-d 后台一直运行
-rm 会判断如果存在同名实例会删除替换
命令最后一单词就是部署的镜像名称(全小写)
  1. 输入exit退出(前台执行时)
  1. 测试api
    1. curl 接口地址
  1. 查看docker中已安装的镜像
docker images
  1. 查看所有运行中的容器
docker ps
  1. 查看所有容器
docker ps -a
  1. 关闭容器
docker stop 容器ID(dotnet ps出的CONTAINER ID )或容器名
  1. 启动容器
docker start 容器ID
  1. 重启容器
docker restart 容器id
  1. 删除容器
docker rm 容器id
  1. 删除镜像
    1. 先停止运行的相关的实例
      1. 如果存在正在运行的docker容器,删除会报错“Error: container_delete: Impossible to remove a running container, please stop it first”
    2. docker rmi imageid
      1. 删除报错:Error response from daemon: conflict: unable to delete f35646e83998 (must be forced) - image is being used by stopped container a45bd96a270b
说明容器只是stop并没有被删除,执行docker rmi 容器id 删除容器后在删除镜像。
也可使用 docker rmi -f imageid 强制删除镜像
  1. 导出镜像。在哪个路径导出文件在哪
    1. docker save -o <保存路径及导出的mingc.tar> <镜像名称:标签>
docker export -o ./mydocker_jingxiang.tar zs111:2112
  1. 导入镜像
docker load < 导入的路径及文件名称.tar
  1. 导出容器。在哪个路径导出文件在哪
    1. docker export 容器ID> 导出路径及的名称.tar
  2. 导入容器
docker import 导入路径及文件名称.tar REPOSITORY:TAG
报错:docker: Error response from daemon: No command specified.
See 'docker run --help'.
解决:在导入语句最后加 /bin/bash
  1. 其他
查看容器进程docker top cid 查看容器日志docker logs cid 查看容器变化 docker diff cid 进入容器docker exec -ti cid /bin/bash或者 docker attach cid(不推荐,终端显示相同,显示不 安全且容易卡住) 查看容器详细信息 docker inspect cid 包括配置信息,名称,命令、网路配置以及很多有用数据 查看容器端口 docker port cid
列出所有容器id docker ps -aq
停止所有容器 docker stop $(docker ps -aq)
删除所有容器 docker rm $(docker ps -aq)
删除所有镜像 docker rmi $(docker images -q)

链接:https://pan.baidu.com/s/1zZe9H1Fevf7DdzfF-MJb9w
提取码:t0ai

linux centos8 安装dokcker并启动coreapi的更多相关文章

  1. linux centos7 安装nginx并启动

    Linux下安装Nginx完整教程及常见错误解决方案:https://blog.csdn.net/chenxiaochan/article/details/63688346 CentOS 7 安装Ng ...

  2. linux(centos8):安装prometheus服务端/node_exporter客户端(prometheus 2.18.1)

    一,prometheus的用途 Prometheus是一个开源的系统监控和警报工具包 相比其他监控系统,它更适用于微服务的体系架构 它使用各种专用exporter,用来实现对硬件/存储/数据库/web ...

  3. linux(centos8):安装配置consul集群(consul 1.8.4 | centos 8.2.2004)

    一,什么是consul? 1,Consul 是 HashiCorp 公司推出的开源软件,用于实现分布式系统的服务发现与配置. Consul 是分布式的.高可用的. 可横向扩展的   2,官方网站: h ...

  4. linux(centos8):安装Jenkins持续集成工具(java 14 / jenkins 2.257)

    一,什么是Jenkins? 1,jenkins是什么? Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具, 用于监控持续重复的工作,旨在提供一个开放易用的软件平台, 使软件的持续 ...

  5. linux(centos8):安装分布式事务服务seata(file单机模式,seata 1.3.0/centos 8.2)

    一,什么是seata? Seata:Simpe Extensible Autonomous Transcaction Architecture, 是阿里中间件,开源的分布式事务解决方案. 前身是阿里的 ...

  6. linux(centos8):安装jmeter5.3

    一,jmeter的用途: Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试, 它最初被设计用于Web应用测试,但后来扩展到其他测试领域.  Apach ...

  7. redis在linux的安装和开机启动(二)

    编译 安装 makefile已经存在 执行make 即可 make之后, 自动创建可运行的脚本文件, 不需要再执行 install了. 将脚本文件, 拷贝到指定位置, 就可以了. 手动创建目录, 需要 ...

  8. Linux下安装zookeeper和启动

    原文:https://yq.aliyun.com/articles/662422 1.zookeeper官网下载安装包http://mirrors.hust.edu.cn/apache/zookeep ...

  9. linux(centos8):安装kubernetes worker节点并加入到kubernetes集群(kubernetes 1.18.3)

    一,安装kubernetes前的准备工作      安装前的准备工作(master\worker都要进行)      参见: https://www.cnblogs.com/architectfore ...

随机推荐

  1. 关于JAVA的一些零碎小知识

    1.经常遇到集合之间需要互相转化的 Array和List转化:Arrays.asList(数组):list.toArray(); List和Set转化:Set<String> set = ...

  2. Java基础一篇过(六)Java8--lambda表达式

    一.简介 lambda表达式是Java8的一个重要特性,也可以称为闭包,常用于配合Java8的Stream对集合元素进行操作,使得代码更简介紧凑. 二.代码解析 虽说lambda表达式是一个新的特性, ...

  3. Java Web学习(五)session、cookie、token

    文章更新时间:2020/09/14 一.引言 动态网页兴起后,会话管理变成开发者需要考虑的一个问题,由于HTTP请求是无状态的,为了区分每个用户,此时引入了会话标识(sessionId)的概念,但是存 ...

  4. php+html实现用户登录退出

    随着渗透学习,逐渐意识到了学会开发也是非常重要的,仅仅是看懂感觉还是差了一些,所以写一写php的开发,这套程序目前并未有较完整的功能,之后会不断进行完善 登录页面.html <!DOCTYPE ...

  5. PuTTY 连接 linux 服务器执行 make menuconfig 乱码问题解决

    PuTTY 连接 linux 服务器执行 make menuconfig 时可能出现乱码,如下图所示: 有两个方法解决这个问题: 方法一: 修改 PuTTY 配置如下图所示: 方法二: 在 -/.ba ...

  6. 如何让百度网盘下载速度达60MB/s!

    (软件下载方式在文末) 自从 PanDownload 被处理之后 一直没有超越它的可替代的应用出来 但是最近,竟然有人接盘了!重新制作上线 推出了更加强劲的复活版! 放张图,大家先感受下 60MB/s ...

  7. 关于Python中以字母r,或字母u 开头的字符串

      (1)以r或R开头的Python中的字符串表示(非转义的)原始字符串 python里面的字符,如果开头处有个r,比如: (r'^time/plus/\d{1,2}/$', hours_ahead) ...

  8. 使用模拟退火算法优化 Hash 函数

    背景 现有个处理股票行情消息的系统,其架构如下: 由于数据量巨大,系统中启动了 15 个线程来消费行情消息.消息分配的策略较为简单:对 symbol 的 hashCode 取模,将消息分配给其中一个线 ...

  9. 温故知新----封装(struct)

    上次提到class是最常见的封装,今天发现别人开发的SDK里面有大量的结构体struct 转载: 1. https://blog.csdn.net/a_forever_dream/article/de ...

  10. WJQ与机房

    sample input 5 6 7 2 3 1 1 5 0 6 0 0 8 6 6 5 3 4 3 7 8 2 4 0 0 6 9 sample output 20 样例解释: 分别以(2,1)为左 ...