Docker基础:VMware虚拟机Centos7环境下docker安装及使用
1.docker简介
官网https://docs.docker.com/engine/install/

1.1 镜像(image)
docker镜像就好比是一个目标,可以通过这个目标来创建容器服务,通过镜像可以创建多个容器
1.2 容器(container)
docker利用容器技术,运行一个或者一组应用,通过镜像来创建的。
启动,停止,删除,基本命令
目前可以同期理解为一个简易的Linux系统
1.3 仓库(repository)
仓库用来存储镜像
2.docker安装
我是利用虚拟机搭建的centos环境,关于虚拟机的搭建可以参考https://www.cnblogs.com/pengboke/p/13063168.html
手动安装
2.1 卸载旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2.2 安装所需的软件包
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
2.3 设置仓库(以下选一种即可)
2.3.1 官方源地址
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
2.3.2 阿里云
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
2.3.3 清华大学源
sudo yum-config-manager \
--add-repo \
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
2.4 安装最新版本的 Docker Engine-Community 和 containerd(docker-ce是社区版 而ee是企业版)
列出并排序您存储库中可用的版本(以下任选一种方案)
(1)yum list docker-ce --showduplicates | sort -r
安装特定版本
sudo yum install docker-ce-<version_string> docker-ce-cli-<version-string> containerd.io
(2)或者直接执行以下命令安装最新版
sudo yum install docker-ce docker-ce-cli containerd.io
2.5 启动 Docker
sudo systemctl start docker
2.6 运行 hello-world 进行验证
sudo docker run hello-world
3.卸载docker
3.1 删除安装包
yum remove docker-ce
3.2 删除镜像、容器、配置文件等内容
rm-rf /var/lib/docker
4.阿里云镜像加速
4.1 vim /etc/docker/daemon.json 4.2
{
"registry-mirrors": ["https://****.mirror.aliyuncs.com"]
}
4.3
# 重启服务
systemctl daemon-reload
systemctl restart docker
4.4 docker info 查看docker信息 最后几行

5.docker的常用命令
5.1 帮助命令
docker version #显示docer的版本信息
docker info #显示docker的系统信息 包括镜像和容器的数量
docker 命令 --help #命令
5.2 镜像命令
docker images #查看所有本地主机上的镜像 可以使用docker image ls代替

dokcer search #搜索镜像

dokcer pull #下载镜像 docker image pull 分层下载

docker rmi #删除镜像docker image rm
docker rmi -f 镜像id #根据镜像id删除
docker rmi -f 镜像id 镜像id 镜像id #删除多个镜像
docker rmi -f $(docker images -aq) #删除所有镜像

5.3 容器命令
docker run 镜像id #新建容器并启动
docker run -it centos /bin/bash

exit #容器直接退出
ctrl + P + Q #容器不停止退出

docker ps #列出所有的运行的容器 docker container list

docker ps -aq

docker rm 容器id #删除指定容器
docker rm -f $(docker ps -aq) #删除所有容器
docker ps -a -q | xargs docker rm #删除所有容器
dokcer start 容器id #启动容器
docker restart 容器id #重启容器
docker stop 容器id #停止当前正在运行的容器
dokcer kill 容器id #强制停止当前容器
5.4 后台启动命令
docker ps 后发现 centos停止了
docker容器使用后台运行,就必须要有要一个前台进程,docker发现没有应用,就会自动停止
nginx,容器启动后,发现自己没有提供服务,就会立刻停止,就是没有程序了
docker run -d centos #后台启动命令

5.5 查看日志
docker logs -t --tail n 容器id #查看n行日志
docker logs -ft 容器id #跟着日志
5.6 查看进程
docker top 容器id #查看容器中进程信息id
docker top 694f11ed26d1

5.7 查看镜像元数据
docker inspect 容器id #查看镜像的元数据
docker inspect 694f11ed26d1

5.8进入当前正在运行的容器
docker exec -it 694f11ed26d1(容器id) /bin/bash #进入当前容器后开启一个新的终端,可以在里面操作。(常用)

docker attach 694f11ed26d1(容器id) # 进入容器正在执行的终端

5.9 从容器内拷贝文件到主机

6.docker安装Nginx
6.1 安装nginx
docker run -d --name nginx00 -p 3344:80 nginx
6.2 查看容器
docker ps
6.3 查看nginx

7.docker安装tomcat
7.1 安装tomcat
docker run -it --rm tomcat:9.0

7.2 下载tomcat
docker pull tomcat

7.3 启动运行
docker run -d -p 8080:8080 --name tomcat01 tomcat

7.4 测试访问
curl localhost:8080

7.5 进入容器
docker ps #查看当前运行容器
~ docker exec -it 1bacf343cd06/bin/bash #进入容器

8.docker部署es+kibana
8.1下载启动elasticsearch(docker一步搞定)
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2

如果需要重新启动 可以删除后再启动
docker ps -a

docker rm 4dc703d1130b

8.2测试es是否启动成功
curl localhost:9200

8.3查看doker容器使用内存情况
doker stats

8.4关闭 添加内存的限制 修改配置文件 -e 环境配置修改
8.4.1 docker ps -a
8.4.2 docker rm -f c00920e31f2c

8.4.3 修改配置文件并启动
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m" elasticsearch:7.6.2

8.5 测试es测试es是否启动成功
curl localhost:9200

9.docker可视化
9.1打开可视化服务(portainer)
docker run -d -p 8080:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer


Docker基础:VMware虚拟机Centos7环境下docker安装及使用的更多相关文章
- Hyperledger fablic 1.0 在centos7环境下的安装与部署和动态增加节点
Hyperledger fablic 1.0 在centos7环境下的安装与部署和动态增加节点 一.安装docker 执行代码如下: curl -sSL https://get.daocloud.io ...
- 全世界最详细的图形化VMware中linux环境下oracle安装(二)【weber出品必属精品】
<ORACLE 10.2.05版本的升级补丁安装> 首先我们解压 $ unzip p8202632_10205_LINUX.zip 解压后我们会发现多出了个文件夹,他是:Disk1,进入D ...
- 全世界最详细的图形化VMware中linux环境下oracle安装(一)【weber出品必属精品】
安装流程:前期准备工作--->安装ORACLE软件--->安装升级补丁--->安装odbc创建数据库--->安装监听器--->安装EM <前期准备工作> 安装 ...
- 基础--Redis在Linux环境下的安装
1. 安装redis服务 1.1 检查安装依赖程序 yum install gcc-c++yum install -y tclyum install wget 1.1.1 下载redis安装包 (或者 ...
- Centos7环境下Docker容器的安装与卸载
Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare metal. ...
- Hyperledger fablic 0.6 在centos7环境下的安装与部署
原文:http://blog.csdn.net/zhaoliang1131/article/details/54617274 Hyperledger Fabric超级账本 项目约定共同遵守的 基本原则 ...
- 基础--Redis在Windows环境下的安装
1. 安装Redis 1.1 下载安装包 https://github.com/ServiceStack/redis-windows#3-run-the-redis-serverexe-using-t ...
- centos7环境下在线安装mysql
卸载mariadb centos默认安装了mariadb,因此,在安装mysql之前,需要卸载系统中安装的mariadb. 查看系统中所有已安装的mariadb包.命令:rpm -qa | grep ...
- centos7环境下mysql安装
1.去官网下载合适的yum源安装包 https://dev.mysql.com/downloads/repo/yum/ 2.yum 本地安装 命令:yum localinstall mysql57-c ...
随机推荐
- .NET6系列:Visual Studio 2022 线路图
系列目录 [已更新最新开发文章,点击查看详细] 在上一篇博客<Visual Studio 2022>中介绍了VS2022的性能改进与重要功能.本文主要介绍在 Visual Stud ...
- 【odoo】【知识点】视图的继承逻辑
背景:同一个模块,两组开发人员对同一个模型的form视图进行了二开.在没有指定外部ID的情况下,odoo是如何选择展示展示哪个视图呢? 上干货 odoo在加载视图的时候,首先调用的models.py中 ...
- golang快速入门(五)初尝web服务
提示:本系列文章适合对Go有持续冲动的读者 初探golang web服务 golang web开发是其一项重要且有竞争力的应用,本小结来看看再golang中怎么创建一个简单的web服务. 在不适用we ...
- EVE-NG 入门教程 (Mac OSX BIg Sur)
EVE-NG 入门搭建指南 1. 什么是 EVE-NG EVE-NG (Emulate d Virtual Environment) 是一个可以运行虚拟主机.网络设备的模拟器,目前该软件分为了社区版. ...
- Linux 中的 守护进程
什么是守护进程 脱离控制终端的,运行于后端的进程,由系统管理的,按计划自动启动/停止/重启,用以执行特定的任务. 为什么要有守护进程? 在某些需求场景下,我们希望某项系统任务能够按计划按预期,始终/自 ...
- 永远的Ace 团队作业4—团队项目需求建模与系统设计(1)
项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/2018CST/ 这个作业要求链接 https://www.cnblogs.com/nwnu-da ...
- BAD SLAM:捆绑束调整直接RGB-D SLAM
BAD SLAM:捆绑束调整直接RGB-D SLAM BAD SLAM: Bundle Adjusted Direct RGB-D SLAM 论文地址: http://openaccess.thecv ...
- Python_Selenium之basepage 识别元素、浏览器操作、获取属性、鼠标事件、键盘事件、弹窗、切换frame、切换句柄等封装
#coding=gbkimport osimport timefrom selenium import webdriverfrom selenium.webdriver.common.by impor ...
- MongoDB学习笔记01:入门
MongoDB简介 MongoDB是一个开源.高性能.无模式的文档型数据库,当初的设计就是用于简化开发和方便扩展,是NoSQL数据库产品中的一种.是最 像关系型数据库(MySQL)的非关系型数据库. ...
- 『言善信』Fiddler工具 — 13、Fiddler断点功能的使用详解
目录 1.Fiddler断点的应用 2.断点的分类 3.设置全局断点 (1)设置before Requests全局断点: (2)设置After Responses全局断点: 4.设置局部断点 (1)设 ...