之前闲暇之余有玩过一哈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. 再次小结windows服务的编写

    2013-03-23 21:05 (分类:计算机程序) 其实很简单 void mian() { //服务的分派表    SERVICE_TABLE_ENTRY DispatchTable[] ={   ...

  2. Rust学习--变量

    0x0 每种编程语言都有变量的概念,我们可以把变量理解为最简单的存储方式,它是编码过程中是必不可少的. Rust的变量很有特色.变量不可变的特性让人想起了Erlang.以及后面的模式匹配,我觉得作者应 ...

  3. 《自拍教程24》在Windows上配置环境变量

    我们说的环境变量,一般是指的是Path环境变量. 第一步:点击"我的电脑",右键,"属性" 第二步:点击"高级系统设置",弹出的窗口选&qu ...

  4. linux中权限管理命令(chmod/chown/chgrp/unmask)

    目录 chmod chown chgrp umask chmod 解释 命令名称:chmod 命令英文原意:change the permissions mode of a file 命令所在路径:/ ...

  5. C# NewtonJson Serialize and deserialize

    using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using Sys ...

  6. npm安装Vue.js

    我之前是有安装过npm的 使用淘宝 NPM 镜像 $ npm install -g cnpm --registry=https://registry.npm.taobao.org 查看nmp版本 $ ...

  7. vue 路由过渡动效

    <router-view> 是基本的动态组件,所以我们可以用 <transition> 组件给它添加一些过渡效果: <transition name="slid ...

  8. Electron – 基础学习(3): 项目打包成exe桌面应用 之electron-builder

    前次用 electron-packager 打包成功,这次改用 electron-builder 打包,然后根据项目中实际需要进行选择使用. 第一步:全局安装 electron-builder,便于系 ...

  9. Python爬虫实战教程:爬取网易新闻;爬虫精选 高手技巧

    前言本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. stars声明很多小伙伴学习Python过程中会遇到各种烦恼问题解决不了.为 ...

  10. 多字节与Unicode

    编码知识 一.Unicode与多字节(ANSI ) (1)Windows中,Unicode也称为宽字节,多字节也称为窄字节; VS中默认使用Unicode编码,在项目属性>>配置属性> ...