之前闲暇之余有玩过一哈Dokcer容器,但是日子挺久了,然后挺多东西就忘记了,趁着今天有时间重拾一下docker的相关知识。

搜索下载镜像

docker search ubuntu

docker pull ubuntu

查看当前所有镜

docker images

启动容器

docker run -it ubuntu /bin/bash

参数说明:

-i: 交互式操作。

-t: 终端。

ubuntu: ubuntu 镜像。

/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。

要退出终端,直接输入 exit:

查看所有运行的容器

docker ps -a

docker start 启动一个已停止的容器

docker start b750bbbcfd88

后台运行

在大部分的场景下,我们希望 docker 的服务是在后台运行的,我们可以过 -d 指定容器的运行模式。

$ docker run -itd --name ubuntu-test ubuntu /bin/bash

停止一个容器

$ docker stop <容器 ID>

重启一个容器

docker restart <容器 ID>

进入容器

在使用 -d 参数时,容器启动后会进入后台。此时想要进入容器,可以通过以下指令进入:

docker attach

docker exec:推荐大家使用 docker exec 命令,因为此退出容器终端,不会导致容器的停止。

导出容器

$ docker export 1e560fca3906 > ubuntu.tar

删除容器

docker rm -f 1e560fca3906

删除镜像

docker rmi -f 1e560fca3906

itgoyo@itgoyodeMacBook-Pro  ~  docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
wahyd4/aria2-ui latest be489116face 2 months ago 100MB
530353222/baidupcs-web 3.6.8 2e1114282001 2 months ago 40.1MB
mysql latest c7109f74d339 7 months ago 443MB
titpetric/netdata latest e75e93e28478 12 months ago 267MB
tomcat latest 1a51cb5e3006 12 months ago 462MB
nginx latest 7042885a156a 12 months ago 109MB
mysql 5.7.23 1b30b36ae96a 15 months ago 372MB
haocen/hexo-with-hexo-hey latest e619af3ff3ea 2 years ago 332MB

第一列就是镜像的名称,例如我要删除ubuntu的镜像的话,就输入docker rmi IMAGE ID

注意点:

  1. 删除前需要保证容器是停止的 stop

  2. 需要注意删除镜像和容器的命令不一样。 docker rmi ID , 其中 容器 (rm) 和 镜像 (rmi)

  3. 顺序需要先删除容器

删除所有停止的容器

docker container prune

删除所有不是用的镜像

docker image prune --force --all或者docker image prune -f -a

启动容器的步骤

docker run -itd --name itgoyo-ubuntu ubuntu /bin/bash
docker exec -it itgoyo-ubuntu bin/bash
以下表示进入容器成功
root@95588eaee9f4:/# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
root@95588eaee9f4:/#

SSH

查看当前的 ubuntu 是否安装了 ssh-server 服务。默认只安装 ssh-client 服务。

dpkg -l | grep ssh

安装 ssh-server 服务

sudo apt-get install openssh-server

确认 ssh-server 是否启动了:

ps -e | grep ssh

如果看到 sshd 那说明 ssh-server 已经启动了。

如果没有则可以这样启动:sudo /etc/init.d/ssh start 或 sudo service ssh start

配置相关:

ssh-server 配置文件位于 /etc/ssh/sshd_config,在这里可以定义 SSH 的服务端口,默认端口是 22,你可以自己定义成其他端口号,如 222。(或把配置文件中的”PermitRootLogin without-password” 加一个”#” 号,把它注释掉,再增加一句”PermitRootLogin yes”)

然后重启 SSH 服务:

sudo /etc/init.d/ssh stop

sudo /etc/init.d/ssh start

登陆 SSH(Linux)

ssh username@192.168.1.103

其中,username 为 192.168.1.103 机器上的用户,需要输入密码。

断开连接:exit


    发现更多更好玩的,欢迎关注我的微信公众号:<span style='color:red;'> FullStacker </span><br />

    <Br>
<img src="https://cdn.jsdelivr.net/gh/itgoyo/PicGoRes@master/img/fullstacker.png"
height="400px" width="400px" />
</div>

Docker造化钟神秀的更多相关文章

  1. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  2. Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境

    首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...

  3. Docker 第一篇--初识docker

    已经多年不写博客, 看完<晓松奇谈>最后一期猛然觉醒, 决定仔细梳理下自己这几年的知识脉络. 既然决定写, 那么首先就从最近2年热门的开源项目Docker开始.Docker 这两年在国内很 ...

  4. 在docker中运行ASP.NET Core Web API应用程序(附AWS Windows Server 2016 widt Container实战案例)

    环境准备 1.亚马逊EC2 Windows Server 2016 with Container 2.Visual Studio 2015 Enterprise(Profresianal要装Updat ...

  5. docker for mac 学习记录

    docker基本命令 docker run -d -p 80:80 --name webserver nginx 运行容器并起别名 docker ps 展示目前启动的容器 docker ps -a 展 ...

  6. scrapy爬虫docker部署

    spider_docker 接我上篇博客,为爬虫引用创建container,包括的模块:scrapy, mongo, celery, rabbitmq,连接https://github.com/Liu ...

  7. [原][Docker]特性与原理解析

    Docker特性与原理解析 文章假设你已经熟悉了Docker的基本命令和基本知识 首先看看Docker提供了哪些特性: 交互式Shell:Docker可以分配一个虚拟终端并关联到任何容器的标准输入上, ...

  8. 开发者的利器:Docker 理解与使用

    困扰写代码的机器难免会被我们安装上各种各样的开发工具.语言运行环境和引用库等一大堆的东西,长久以来不仅机器乱七八糟,而且有些相同的软件还有可能会安装不同的版本,这样又会导致一个项目正常运行了,却不小心 ...

  9. 使用python自动生成docker nginx反向代理配置

    由于在测试环境上用docker部署了多个应用,而且他们的端口有的相同,有的又不相同,数量也比较多,在使用jenkins发版本的时候,不好配置,于是想要写一个脚本,能在docker 容器创建.停止的时候 ...

随机推荐

  1. linux 删除文件 磁盘空间未释放

    具体情况就是:删除了一个超大文件后,发现磁盘空间没有变化 原因:有进程正在使用这个文件,虽然我们从文件系统的目录结构上解除链接(unlink),然而文件是被 打开的(有一个进程正在使用),那么进程将仍 ...

  2. centos7利用系统镜像修复grub

    1 故障描述 由于错误操作,导致grub配置文件失效,系统开机后一直卡在下面的画面. 2 解决办法 这时候,就要利用系统镜像光盘,进入修复模式,然后按下面图示操作 进入镜像的shell环境,如下图所示 ...

  3. Cobalt Strike生成后门

    Cobalt Strike生成后门 1.Payload概念 Payload在渗透测试之中大家可以简单地理解为一段漏洞利用/植入后门的代码或程序. 2.Cobalt Strike生成后门 攻击--> ...

  4. NPM install -save 和 -save-dev 区别

    最近在写Node程序的时候,突然对 npm install 的-save和-save-dev 这两个参数的使用比较混乱.其实博主在这之前对这两个参数的理解也是模糊的,各种查资料和实践后对它们之间的异同 ...

  5. js模拟post提交表单

    function post(URL, PARAMS) {            var temp = document.createElement("form");         ...

  6. 小浩算法|一文让你学会如何用代码判断"24"点

    “24点”是一种数学游戏,正如象棋.围棋一样是一种人们喜闻乐见的娱乐活动.它始于何年何月已无从考究,但它以自己独具的数学魅力和丰富的内涵正逐渐被越来越多的人们所接受.今天就为大家分享一道关于“24点” ...

  7. Go 1.14 中 Cleanup 方法简介

    目录 一般的测试 使用 defer 清除依赖 使用 Cleanup 关于t.Parallel 总结 原文:What's New In Go 1.14: Test Cleanup 单元测试通常遵循某些步 ...

  8. Android中使用Notification在状态栏上显示通知

    场景 状态栏上显示通知效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实现 新 ...

  9. Android中实现照片滑动时左右进出的动画的xml代码

    场景 Android中通过ImageSwitcher实现相册滑动查看照片功能(附代码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/det ...

  10. 有关版本控制--SVN

    什么是版本控制? 这个之前有记录过相关的内容 版本管理就是管理更新的历史记录, 它给我们提供了一些在软件开发过程中必不可少的功能,例如: 记录一款软件添加或更改源代码的过程 回滚到特定阶段,恢复误删除 ...