企业应用交付Docker镜像进阶实战笔记(上)

简介: 企业应用交付Docker镜像进阶实战笔记

一、准备工作


1.1 查看内核


// 保证内核 3.10 以上
uname -r


1.2 卸载旧版docker

yum remove docker \
      docker-client \
      docker-client-latest \
      docker-common \
      docker-latest \
      docker-latest-logrotate \
      docker-logrotate \
      docker-engine
// docker默认工作路径
rm -rf /var/lib/docker


1.3 安装依赖


yum -y install yum-utils


1.4 设置国内阿里云镜像仓库


yum-config-manager \
  --add-repo \
  http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo


1.5 更新yum


yum makecache fast


1.6 安装Docker


// docker-ce 社区版本 docker-ee 企业版
yum install docker-ce docker-ce-cli containerd.io


1.7 启动Docker测试


// 启动
systemctl start docker
// 查看信息
docker version
// 测试helloword
docker run helloword


1.8 查看镜像


docker images


二、阿里云镜像加速


2.1 登录阿里云账号


20200729093253579.png


2.2 镜像加速


20200729093534795.png


2.3 配置加速

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://e5yl33pf.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

20200729093722276.png


三、Docker命令


docker info 
docker 命令 --help


3.1 镜像命令

// 查看本地所有的镜像
docker images
// 搜索 镜像
docker search mysql
// 下载默认最新的镜像  分层下载Docker的核心 文件系统
docker pull mysql
// 下载指定版本的镜像
docker pull mysql:5.7
// 删除镜像
docker rmi -f imageID
// 删除所有镜像
docker rmi -f $(docker images -aq)


四、容器命令


4.1 常用命令

docker run  [可选参数] imageid
--name="名字" tomcat01 tomcat02
-d 后台方式运行
-it 进入容器交互运行
-p 主机端口:容器端口   指定容器端口


4.2 运行centos镜像


docker pull centos
docker run -it centos /bin/bash


20200729101915975.png

20200729102009470.png

// 列出所有运行的Docker
docker ps
// 删除容器
docker rm 容器ID
// 强制删除所有,包括运行的容器
docker rm -f $(docker ps -aq)

4.3 Docker容器启动停止


docker start  容器ID
docker restart  容器ID
docker stop  容器ID
docker kill  容器ID


4.4 日志,元数据,进程

// 后台运行
docker run -d 镜像名/镜像ID
// 查看日志
docker logs -t -f --tail 10 容器ID
// 进程信息
docker top 容器ID
// 元数据
docker inspect 容器ID

4.5 进入运行容器修改配置


// 1:进入运行容器
docker exec it 容器ID /bin/bash
// 2.进入正在运行容器
docker attach  容器ID /bin/bash


4.6 拷贝命令


// 从容器内部拷贝到主机
// 1.进去容器
docker attach 容器ID
// 2.需要拷贝的内容
 touch test.txt
// 3.退出容器
exit
// 4. 拷贝到主机
docker cp 容器ID:/home/test.txt /home


五、Docker部署Nginx


docker search nginx
docker pull nginx
docker images
docker run -d --name nginx01 -p:3344:80 nginx
docker ps

20200729111544468.png

// 进入容器才可以修改文件配置 重启!!!
docker exec -it nginx01 /bin/bash
-v 数据卷的技术可以解决

六、Docker部署Tomcat


docker pull tomcat
docker run -d -p 8081:8080 --name tomcat01 tomcat


七、Docker部署ES+Kibana


7.1 部署ElasticSearch 7.6.2

// es 端口多
// es 耗内存
// es 的数据一般要放置到安全目录 挂载
docker run -d --name elasticsearch01 -p 9200:9200 -e  "discovery.type=single-node" elasticsearch:7.6.2

7.2 【解决卡顿 内存消耗问题】


ES默认启动1G内存,我的阿里云是1核2G内存,这是原因。


// 查看cpu
docker stats


20200729125107750.png

// 关闭
docker stop 容器ID
// 增加内存限制
docker run -d --name elasticsearch02 -p 9200:9200 -e  "discovery.type=single-node"  -e ES_JAVA_OPTS="-Xms64m -Xmx512m"  elasticsearch:7.6.2

20200729133323878.png


问题解决!!!


7.3 Docker部署Kibana


问题思考?

可以通过localhost 链接ES吗??


20200729133618876.png

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。 &nbsp;
目录
相关文章
|
6月前
|
JavaScript Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
477 100
|
6月前
|
缓存 安全 Linux
优化Docker镜像大小的多阶段构建实践
优化Docker镜像大小的多阶段构建实践
444 99
|
6月前
|
缓存 Docker 容器
优化Docker镜像大小的五个实用技巧
优化Docker镜像大小的五个实用技巧
599 98
|
6月前
|
安全 Go Docker
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
|
5月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
5月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
688 6
|
6月前
|
Java Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
285 8
|
8月前
|
Docker 容器 应用服务中间件
Docker 客户端是如何拉取镜像的?
Docker客户端拉取镜像的过程遵循Docker Registry HTTP API V2规范,主要分为解析镜像名、鉴权、获取Manifest、拉取Layers及本地合并五个步骤。它与Docker Hub、Harbor等仓库通信,确保镜像正确下载和构建。
1285 59
|
7月前
|
缓存 Ubuntu Docker
Ubuntu环境下删除Docker镜像与容器、配置静态IP地址教程。
如果遇见问题或者想回滚改动, 可以重启系统.
473 16
|
7月前
|
运维 关系型数据库 数据库
应用官方 Docker 镜像已成熟,团队为何转向 Websoft9 而不再依赖 Bitnami
随着云原生发展,部署工具从 Bitnami 转向 Websoft9。后者基于官方镜像,提供多应用编排与统一运维,提升部署效率与维护能力,适合多系统协同场景。
应用官方 Docker 镜像已成熟,团队为何转向 Websoft9 而不再依赖 Bitnami