#!/bin/bash
#获取用户名
[ pwd == '/root' ] && hn="root@$(hostname):~#" || hn="root@$(hostname):pwd#"
d (){
echo -e "\033[1m$hn$dd\033[0m"
}
a (){
sleep 1
}
c (){
echo -e "\033[32m$cc\033[0m"
}
#检查网络
ping -c 3 -i 0.2 -W 1 www.g.cn &> /dev/null
[ $? -ne 0 ] && echo "请检查你的网络是否畅通" && exit

read -p "请输入你的镜像加速地址.如https://rala1lg0.mirror.aliyuncs.com:" http

cc="步骤1 apt-get update 更新数据源" && c
dd="apt-get update" && d
apt-get update && a

cc="步骤2 安装所需依赖" && c
dd="apt-get -y install apt-transport-https ca-certificates curl software-properties-common" && d
apt-get -y install apt-transport-https ca-certificates curl software-properties-common && a

cc="步骤3 安装GPG证书" && c
dd="curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add" && d
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add && a

cc="步骤4 新增数据源" && c
dd='add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"' && d
add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs)
stable" && a

cc="步骤5 更新并安装 docker-ce " && c
dd="apt-get update && apt-get install -y docker-ce " && d
apt-get update && apt-get install -y docker-ce && a

cc="步骤6 验证是否安装成功 " && c
dd="docker version" && d
docker version && a

cc="步骤7 配置docker镜像加速器" && c
m1='"registry-mirrors"'
m2=': ["'
m3=$http
m4='"]'
m5=$m1$m2$m3$m4
dd="tee /etc/docker/daemon.json <<-'EOF'
{
$m5
}
EOF" && d
echo "{
$m5
}" > /etc/docker/daemon.json && a && cat /etc/docker/daemon.json
sudo systemctl daemon-reload
sudo systemctl restart docker
cc="查看镜像仓库多了加速地址" && c
dd="docker info" && d
docker info |tail -10 && a

cc="查看docker运行状态" && c
dd="service docker status" && d
service docker status |head -15 && a

cc="Hello-world程序验证Docker的正确安装" && c
dd="docker run hello-world" && d
docker run hello-world | head -10 && a

cc="Docker镜像,搜索Docker镜像" && c
dd="sudo docker search ubuntu" && d
sudo docker search ubuntu && a

cc="获取Docker镜像" && c
dd="sudo docker pull ubuntu" && d
sudo docker pull ubuntu & a

cc="获取mysql镜像" & c
dd="docker pull mysql" && d
docker pull mysql & a

cc="查看镜像" && c
dd="docker images" && d
docker images && a

cc="导出docker镜像,删除docker镜像" && c
dd="docker save ubuntu > /opt/ubuntu.tar.gz" && d
docker save ubuntu > /opt/ubuntu.tar.gz
sleep 5
dd="docker rmi ubuntu" && d
docker rmi ubuntu
dd="docker images" && d
docker images && a

cc="导入docker镜像" && c
dd="docker load < /opt/ubuntu.tar.gz" && d
docker load < /opt/ubuntu.tar.gz && a
sleep 5

cc="4.Docker容器,新建并运行容器,查看容器" && c
dd="docker run -itd ubuntu" && d
docker run -it ubuntu & a
dd="docker ps -a" && d
docker ps -a && a && sleep 3

cc="停止容器,删除容器" && c

gn (){
while :
do
x=docker ps -a |wc -l && let y=x-1
[ $y -eq 0 ] && echo "没有可以执行的容器,正在退出..." && sleep 3 && break
docker ps -a
read -p "请输入要停止、删除的完整的容器名,或按ctrl+c结束:" rq && [ -e $rq ] && continue
st=docker ps -a |tail -$y |grep "$rq" |cut -c1-12 |head -1
[ -e $st ] && echo "\033[31m$rq\033[0m不在容器中,容器中有以下服务:" && continue
dd="docker stop $st" && d
docker stop "$st" && a
dd="docker rm -f $st" && d
docker rm -f "$st"
done
}
x=docker ps -a |wc -l && let y=x-1
for i in seq $y
do
read -p "输入:[ls列出可以删除的docker容器][q退出]:" abc
case $abc in
q)
break;;
ls)
gn;;
*)
echo "输入不合法!" && gn;;
esac
done

docker的安装,自己写了一个安装docker的脚本,辅助做docker安装的实验(ubuntu)的更多相关文章

  1. 今天我自己第一次写了一个Windows批处理bat脚本,一起学习一下吧。

    今天我自己第一次写了一个Windows批处理bat脚本,备注一下 事情原由:自己使用Java开发了一个加解密的工具.但是当把工具给别人使用的时候,别人还需要把代码编译打包, 然后还需要看一下代码里面的 ...

  2. 初学shell,今天遇到由wget下载到本地的网页源代码的乱码问题,无聊的写了一个转码的脚本

    今天用wget想下载文件,结果下载了一堆本地的index.html文件,一查看全是乱码,然后百度了一下,网页的编码格式大概有三种: 1.utf-8 2.gb2312 3.gbk 要在网页源码中的< ...

  3. 第一个Mac shell 小脚本

    大多数程序员都喜欢偷懒的,我也不例外.相信好多Android开发的coder 在网络http请求方面,会浪费很多时间在接口调试这里..有时候,自己写了一个小测试,行还好,不行的话,还要跟写后台的哥们一 ...

  4. 一个不错的shell 脚本教程 入门级

    一个很不错的bash脚本编写教程,至少没接触过BASH的也能看懂     建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行s ...

  5. 使用alpine的docker镜像下 dind 的方式安装dotnet core 的一个非dockerfile的方法

    1. 下载dind的镜像 docker pull docker:dind 2. 执行该镜像 docker run -it --privileged --name some-docker -d dock ...

  6. Docker安装以及运行第一个HelloWorld

      Docker安装以及运行第一个HelloWorld

  7. Windows下docker的安装,将ASP.NET Core程序部署在Linux和Docker中

    参考文章: https://www.cnblogs.com/jRoger/p/aspnet-core-deploy-to-docker.html docker for windows下载连接: htt ...

  8. OpenCV学习笔记(一)安装及运行第一个OpenCV程序

    1.下载及安装 OpenCV是一套开源免费的图形库,主要有C/C++语言编写,官网: http://opencv.org/ .在 http://opencv.org/downloads.html 可以 ...

  9. 【ELK】【docker】【elasticsearch】1. 使用Docker和Elasticsearch+ kibana 5.6.9 搭建全文本搜索引擎应用 集群,安装ik分词器

    系列文章:[建议从第二章开始] [ELK][docker][elasticsearch]1. 使用Docker和Elasticsearch+ kibana 5.6.9 搭建全文本搜索引擎应用 集群,安 ...

随机推荐

  1. GitHub之初始化

    1.github上新建repository. 2.本地 mkdir git-init-demo. 3.cd git-init-demo. 4.git clone https://github.com/ ...

  2. 微软Hyperlapse技术:让第一人称摄像稳定而流畅

    编者按:GoPro等第一人称摄像设备已经几乎成为了极限运动者的标配,但拍摄过程中的抖动常会让画面非常糟糕.微软Hyperlapse技术实现了将第一人称录像转化成稳定而流畅的视频.该成果的论文已发表在S ...

  3. 制作MACOSX 10.9Mavericks安装启动U盘教程

    苹果OS X Mavericks发布了,不少朋友又开始制作系统安装U盘了.其实下面介绍的方法与之前介绍的方法可能有些不同,不过原理还是一样的.下面看看具体的操作步骤吧! 1. 首先你需要开启显示隐藏文 ...

  4. Redhat7 配置https

    Redhat7 配置https 分为自签名证书和第3方证书(此时实验为第3方,自签名略) 安装: # yum install httpd mod_ssl 生成key: # openssl genrsa ...

  5. axios统一封装

    本文代码参考了网上别人的资料,经过修改而来 /** * Created by zxf on 2017/9/6. * 封装统一的ajax请求,统一拦截请求,对不同的请求状态封装 * 通常说, ajax ...

  6. SWUST OJ Gold Nuggets Distribution(0490)

    Gold Nuggets Distribution(0490) Time limit(ms): 1000 Memory limit(kb): 65535 Submission: 421 Accepte ...

  7. python Select\Poll\Epoll异步IO与事件驱动

    参考:http://www.cnblogs.com/alex3714/articles/5248247.html 写服务器处理模型的程序时通常采用的模型: (1)每收到一个请求,创建一个新的进程,来处 ...

  8. Apache JMeter--1基础介绍

    一.JMeter 介绍 近期公司要做jmeter调研,将性能测试推广到全部测试组,便一边学习一边做记录. Apache JMeter是100%纯JAVA桌面应用程序,是一款优秀的开源性能测试工具,被设 ...

  9. The Basic Of K8s

    k8s 基础概念 1.一个k8s集群包括 一个Master节点(主节点) 一群Node节点(计算节点) 2.Master节点 包括API Server.Scheduler.Controller man ...

  10. Blue的博客

    整合其他ORM框架 使用Spring所提供的ORM整合方案, 可以获得许多好处: 方便基础设施的搭建 Spring中, 对不同的ORM框架, 首先, 始终可以采用相同的方式配置数据源; 其次, Spr ...