zoukankan      html  css  js  c++  java
  • 安装Docker,Asp.net core

    升级项目到.NET Core 2.0,在Linux上安装Docker,并成功部署

    Docker从入门到实践

    一、安装Docker

    a)、设置Docker仓库

    1、按惯例,首先更新Ubuntu的包索引

    $ sudo apt-get update

    2、让服务器可以使用Https更新仓库

    $ sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

    3、添加Docker官方的密钥对,如果没问题,会返回“OK”

    $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

    4、校验密钥(9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88)是否和官方一致

    $ sudo apt-key fingerprint 0EBFCD88

    5、设置官方稳定版的仓库来源

    $ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

    b)、安装Docker

    1、再次更新下包索引,因为刚才加了Docker仓库,确保是否命中了Docker源

    $ sudo apt-get update

    2、安装最新版本的Docker-CE社区版

    $ sudo apt-get install docker-ce

    3、需要安装其他版本的请使用以下命令

    $ sudo apt-get install docker-ce=1.13

    4、查看是否安装成功

    $ docker version

    5、试着运行一个测试镜像(repository),万能的Hello World!

    $ sudo docker run hello-world

    修改Docker默认启动文件路径

    1.停止docker运行
    systemctl stop docker
    2.在data目录下创建docker目录
    mkdir /data/docker
    3.修改docker的systemd的 docker.service的配置文件
    vim /usr/lib/systemd/system/docker.service   
    vim /etc/systemd/system/multi-user.target.wants/docker.service 
    ExecStart=/usr/bin/dockerd --graph /data/docker
    
    4、迁移/var/lib/docker目录下面的文件到 /data/docker/下面
    
    cp -R /var/lib/docker/* /data/docker/
    
    systemctl daemon-reload
    systemctl start docker

    Docker镜像删除

    Docker 容器镜像删除
    1.停止所有的container,这样才能够删除其中的images:
    docker stop $(docker ps -a -q)
    如果想要删除所有container的话再加一个指令:
    docker rm $(docker ps -a -q)
    2.查看当前有些什么images
    docker images
    3.删除images,通过image的id来指定删除谁
    docker rmi <image id>
    想要删除untagged images,也就是那些id为<None>的image的话可以用
    docker rmi $(docker images | grep "^<none>" | awk "{print $3}")
    要删除全部image的话
    docker rmi $(docker images -q)
    
    docker system prune -a -f

    二、.NetCore的Docker配置

    准备工作:首先记录接下来可能会用到的几个常用命令

    sudo docker pull microsoft/dotnet    //从docker仓库拉取一个名称为“microsoft/dotnet”的镜像
    sudo docker build light    //构建一个名称为light的容器
    sudo docker run hello-world    //运行hello-world容器
    sudo docker images    //查看所有镜像
    sudo docker rm containerid 容器id     //删除containerid容器id
    sudo docker rmi 63sf86332e //删除一个imageid的镜像 sudo docker rmi $(docker images -q) //删除所有镜像 sudo docker ps -a //查看所有容器 sudo docker rm 6f0c67de4b72 //删除一个containerid的容器 sudo docker rm $(sudo docker ps -a -q) //删除所有容器
    说明:使用Ctrl+D快捷键或者键入exit命令来退出容器命令。
    需要注意的是,使用rmi命令删除镜像时,如果已有基于该镜像启动的容器存在,则无法直接删除,需要首先删除容器。
    当然,rmi和rm这两个子命令都提供-f选项,可强制删除存在容器的镜像或启动中的容器。

    1、从docker仓库拉取一个名称为“microsoft/dotnet”的镜像

    sudo docker pull microsoft/dotnet:latest

    完成之后查看一下所有镜像

    (镜像:从仓库中拉取到本地的内容称作镜像;一个镜像里面包含:仓库名称,TAG,镜像ID,创建时间,大小等)

    sudo docker images     //查看所有镜像

    没有运行过得镜像是没有它对应的容器,查看容器的命令

    sudo docker ps -a     //查看所有容器

    注意:此时还没有容器。

    2、首次进入到容器里面需要使用到镜像的仓库名称“microsoft/dotnet”

    sudo docker run -it  microsoft/dotnet  //每次run,都会重新构造出新的互不影响的容器,请自行查看
    dotnet --version                         //查看dot net版本

     

    docker run之后,就会自动构建一个容器了,以后可以使用start、stop、restart命令操作一个存在的容器了。

    (容器:从镜像里面创建出来的一个副本;一个容器里面包含:容器ID,镜像所在的仓库名称,命令,创建时间等)

    容器和镜像的关系好比:object和class的关系。

     启动一个存在的容器

    sudo docker start -i 4dab7aababa1  --容器ID

  • 相关阅读:
    Win7。56个进程让我头疼
    bzoj2843极地旅行社
    bzoj2751[HAOI2012]容易题(easy)
    bzoj3442学习小组
    bzoj4423[AMPPZ2013]Bytehattan
    bzoj4591[Shoi2015]超能粒子炮·改
    bzoj2299[HAOI2011]向量
    bzoj3223Tyvj 1729 文艺平衡树
    bzoj2563阿狸和桃子的游戏
    bzoj3673可持久化并查集 by zky&&bzoj3674可持久化并查集加强版
  • 原文地址:https://www.cnblogs.com/qiyebao/p/7463652.html
Copyright © 2011-2022 走看看