随笔分类 -  CI/CD/Jenkins/Docker部署知识

摘要:一、docker-compose安装 首先说明一下,网上很多博客搜出来是不对的,踩坑主要就踩在那些安装方法上哈。 1、找到安装文件路径 https://github.com/docker/compose/releases,建议自己下载吧,网上很多 curl 或 wget 的链接其实都是不对的 (1) 阅读全文
posted @ 2022-05-10 21:32 古兰精 阅读(10681) 评论(1) 推荐(5) 编辑
摘要:这是我们测试环境遇到的一个问题,详见这篇文章:docker 部署数据库并通过数据卷恢复数据 - https://www.modb.pro/db/109870 然后在网上找到一篇和我们的情况一样:https://www.jianshu.com/p/105855a8a6f7 一、问题背景 公司使用测试数 阅读全文
posted @ 2021-09-17 21:12 古兰精 阅读(3687) 评论(0) 推荐(0) 编辑
摘要:我们习惯的使用下面命令进入容器: docker run -it --name container5 busybox /bin/bash 但是今天遇到报错如下: [root@moapp-0003 ~]# docker exec -it c713b93718e0 /bin/bash OCI runtim 阅读全文
posted @ 2021-08-30 15:54 古兰精 阅读(9174) 评论(0) 推荐(0) 编辑
摘要:在进到容器内部执行命令的时候,如果命令比较长,会出现折行情况,如 可以调节里面的两个环境变量:$COLUMNS $LINES,默认是80 24。 一、问题描述及解决 1、问题情况一:我需求里遇到的情况 docker 容器在启动成功后是可以通过docker exec,kubectl exec命令登陆进 阅读全文
posted @ 2021-08-21 21:01 古兰精 阅读(5191) 评论(1) 推荐(1) 编辑
摘要:一、问题背景 1、问题描述 docker 中执行:apt-get update 报错:E: List directory /var/lib/apt/lists/partial is missing. - Acquire (13: Permission denied) 2、问题原因:权限不足,请使用 阅读全文
posted @ 2021-08-16 21:52 古兰精 阅读(6999) 评论(0) 推荐(1) 编辑
摘要:Dockerfile中RUN,CMD和ENTRYPOINT都能够用于执行命令,下面是三者的主要用途: RUN命令:执行命令并创建新的镜像层,通常用于安装软件包 CMD命令:设置容器启动后默认执行的命令及其参数,但CMD设置的命令能够被docker run命令后面的命令行参数替换 ENTRYPOINT 阅读全文
posted @ 2021-08-13 21:58 古兰精 阅读(751) 评论(0) 推荐(0) 编辑
摘要:不论是开发者是运维人员,都经常有需要进入容器的诉求,目前看,主要的方法不外乎以下几种: (1)使用ssh登陆进容器,需要在容器中安装启动sshd,存在开销和攻击面增大的问题,同时也违反了Docker所倡导的一个容器一个进程的原则。容器本身是一个无状态,用后即焚的东西。为了尽量的轻量快捷建议一个容器尽 阅读全文
posted @ 2021-08-12 18:55 古兰精 阅读(2331) 评论(0) 推荐(0) 编辑
摘要:在docker run创建并运行容器的时候,可以通过-p指定端口映射规则,但是如果后期想要为正在运行的容器添加额外的端口映射该怎么做呢? 方法一:删除原来容器,重新run一个容器。 这种方法只适合没有状态的容器或者没有持久化的容器,毕竟重建后的容器是一个全新的,之前配置的东西全还原了。 也可以将之前 阅读全文
posted @ 2021-08-12 17:45 古兰精 阅读(785) 评论(0) 推荐(0) 编辑
摘要:一、docker 容器网桥实现原理 Docker使用Linux桥接,在宿主机虚拟一个Docker容器网桥(docker0),Docker启动一个容器时会根据Docker网桥的网段分配给容器一个IP地址,称为Container-IP,同时Docker网桥是每个容器的默认网关。因为在同一宿主机内的容器都 阅读全文
posted @ 2021-08-12 17:24 古兰精 阅读(8595) 评论(0) 推荐(4) 编辑
摘要:一、如何在docker容器中安装yum等软件 通过 apt 在 docker 容器中安装各种软件。有时候我们拉取的镜像并没有内置yum等软件,这个时候我们可以使用apt install yum 来安装yum //先更新一波 apt update //vim apt install vim //wge 阅读全文
posted @ 2021-08-12 14:56 古兰精 阅读(10377) 评论(1) 推荐(0) 编辑
摘要:每当在数据库中创建一个对象,所有者可以分配它访问权限。所有者通常是执行创建语句的用户。对于大多数类型的对象,初始状态是:只有所有者(或超级用户)可以修改或删除对象。为了让其他角色或用户使用它,特权或权限必须是理所当然。 为了给用户分配权限,使用 GRANT 命令。 一、授权语法 1、GRANT命令的 阅读全文
posted @ 2021-08-03 22:03 古兰精 阅读(2291) 评论(0) 推荐(0) 编辑
摘要:一、Caused by: java.net.SocketTimeoutException: connect timed out的原因及解决 部署时碰到一个错误,如下: java.net.SocketTimeoutException: connect timed out at redis.client 阅读全文
posted @ 2021-08-03 18:40 古兰精 阅读(3419) 评论(0) 推荐(0) 编辑
摘要:一、docker 安装 PG 的基本使用 1、查看本地pg镜像 —— 需要先 pull 下来一个合适版本的 postgressql 镜像,然后再查看 docker images | grep postgres 2、初始化镜像 —— 需要先创建数据卷 docker run --name postgre 阅读全文
posted @ 2021-08-02 23:38 古兰精 阅读(3378) 评论(0) 推荐(0) 编辑
摘要:一、docker run 的 --rm 选项的作用 Docker容器进程有两种运行模式。 1、前台模式(默认) —— foreground 容器 docker run ... // 或 docker run -d=false ... 注意,只有在前台模式下,才有必要设置-it命令选项,为容器设置伪T 阅读全文
posted @ 2021-08-02 22:39 古兰精 阅读(10848) 评论(0) 推荐(1) 编辑
摘要:一、PostgreSQL备份与还原指定数据库数据和导出指定的数据表 // 备份(pg_dump) pg_dump -h [127.0.0.1] -U [postgres] -d [dbname] -f [dump.sql] // 还原(psql) psql -h [127.0.0.1] -U [po 阅读全文
posted @ 2021-08-01 23:24 古兰精 阅读(1829) 评论(0) 推荐(0) 编辑
摘要:一、docker 内文件系统是如何工作的 —— 镜像启动容器的本质 首先,需要明确 Docker 内的文件系统是如何工作的,Docker镜像被存储在一系列的只读层。 Docker 镜像是由多个文件系统(只读层)叠加而成,当启动一个容器的时候,Docker 会加载只读镜像层并在其上(镜像栈顶部)添加一 阅读全文
posted @ 2021-08-01 22:55 古兰精 阅读(816) 评论(0) 推荐(0) 编辑
摘要:一、Docker 数据管理 在生产环境中使用Docker的过程,往往需要对数据进行持久化,或者需要在多个容器之间进行数据共享,这必然涉及容器的数据管理操作。 所谓Docker的数据持久化即:数据不随着Container的结束而结束。在Docker中,要想实现数据的持久化,需要将数据从宿主机挂载到容器 阅读全文
posted @ 2021-08-01 22:18 古兰精 阅读(605) 评论(0) 推荐(1) 编辑
摘要:一、docker 安装 redis 步骤 1、找一个合适的 redis 版本 —— 目前推荐的稳定版是 5.0 2、使用 docker 安装 redis docker pull redis:5.0 docker images 3、准备redis的配置文件 因为需要redis的配置文件,这里最好还是去 阅读全文
posted @ 2021-08-01 19:04 古兰精 阅读(10186) 评论(0) 推荐(3) 编辑
摘要:在分布式应用程序中,应用程序的不同部分被称为“服务”。例如,如果有一个视频共享网站,它可能包括一个用于将应用程序数据存储在数据库中的服务,一个在用户上传东西后在后台进行视频转码的服务,一个用于前端页面的服务等等。 服务实际上只是“生产中的容器”。每个服务只运行一个映像,但它编码了镜像的运行方式 - 阅读全文
posted @ 2021-07-23 22:33 古兰精 阅读(5313) 评论(0) 推荐(0) 编辑
摘要:一、单服务器组发布 1、蛮力发布 —— 简单粗暴,主要靠手工完成 先将老版本 V1 全部下掉,再将新版本发到机器上去。这种方式会引入服务中断(停机),会直接影响用户的使用体验。 2、金丝雀发布 —— 在蛮力发布基础上的一种简单改进发布方式,目前仍然是不少成长型技术组织的主流发布方式。 (1)实践要点 阅读全文
posted @ 2021-07-21 16:51 古兰精 阅读(549) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示