本站用于记录日常工作内容,虚拟化云计算,系统运维,数据库DBA,网络与安全。
docker容器与外网互访流程讨论容器如何与外部世界通信。这里涉及两个方向: 容器访问外部世界 外部世界访问容器   容器访问外部世界 在我们当前的实验环境下,docker host 是可以访问外网的。[root@localhost ~]# ping -c 2 www.baidu.com PING www.a.shifen.com (180.101.49.12) 56(84) bytes of data. 64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=1 ttl=128 time=12.2 ms 64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=2 ttl=128 time=15.1 ms  我们看一下容器是否也能访问外网呢?[root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES f7b1aff354b3 busybox "sh" 3 seconds ago Up 3 seconds reverent_ganguly [root@localhost ~]# docker exec -it f7b1aff354b3 ping www.baidu.com PING www.baidu.com (180.101.49.11): 56 data bytes 6...
kubernetes集群证书一年后过期,如何续期 模拟证书过期 由kubeadm部署的集群,所生成的证书证书有效期为一年,过期之后集群就不能再次使用了,我们可以对证书进行续期,这样集群就可以继续使用。 可以通过如下命令查看具体过期时间:kubeadm alpha certs check-expiration 这里显示证书在2021年7月5日过期,然后把所有节点的系统时间调整到 2022年10月1日: 所有节点的时间都要调整。 然后在master(vms71上)执行kubectl命令:[root@vms71 ~]# kubectl get nodes Unable to connect to the server: x509: certificate has expired or is not yet valid [root@vms71 ~]# 此时提醒证书已经过期。 对证书进行续期 用如下命令申请续期一年: kubeadm alpha certs renew all[root@vms71 ~]# kubeadm alpha certs renew all ...输出... certificate for the front proxy client renewed certificate embedded in the kubeconfig file for the scheduler manager to use renewed [root@vms71 ~]# 现在查看证书过期时间: 更新kubeconfig文件: 验证 验证集群是否可用: 已经可以继续使用了。查看集群过期时间: 过期时间已...
 
0
Kubelet 证书自动续签 K8s证书一般分为两套:K8s组件(apiserver)和Etcd 假如按角色来分,证书分为管理节点和工作节点。 • 管理节点:如果是kubeadm部署则自动生成,如果是二进制部署一般由cfssl或者openssl生成。 • 工作节点:工作节点主要是指kubelet连接apiserver所需的客户端证书,这个证书由controller-manager组件自动颁发,默认是一年,如果到期,kubelet将无法使用过期的证书连接apiserver,从而导致无法正常工作,日志会给出证书过期错误(x509: certificate has expired or is not yet valid) 二进制,这个是k8s apiserver的一套证书[root@k8s-master ~]# ls /opt/kubernetes/ssl/ ca-key.pem kubelet-client-2020-09-30-11-12-16.pem kubelet.crt server-key.pem ca.pem kubelet-client-current.pem kubelet.key server.pem 这个是apiserver连接etcd所需要的证书[root@k8s-master ~]# ls /opt/etcd/ssl/ ca-key.pem ca.pem server-key.pem server.pem kubeadm部署的两套证书都放在这里[root@k8s-master ~]# ls /etc/kubernetes/pki/ apiserver.crt etcd apiserver-etcd-client.crt ...
CentOS 7下Docker桥接网络,实现与宿主同一网络,实现独立IP与独立端口效果为什么要让docker桥接物理网络? docker默认提供了一个隔离的内网环境,启动时会建立一个docker0的虚拟网卡,每个容器都是连接到docker0网卡上的。而docker0的ip段为172.17.0.1,若想让容器与宿主机同一网段的其他机器访问,就必须在启动docker的时候将某个端口映射到宿主机的端口上才行,例如:docker run -itd -p 22 centos。这是我们所不能接受的,想想每个应用都要绞尽脑汁的去设置端口,因为不能重复,如果应用有多端口那更是不堪设想啊。所以为了让容器与宿主机同一个网段,我们需要建立自己的桥接网络。    centos7宿主机上建立Docker桥接物理网络过程 宿主机网卡信息: DEVICE=ens33 IPADDR=192.168.179.99 GATEWAY=192.168.179.2 NETMASK=255.255.255.0 DNS1=114.114.114.114 DNS2=8.8.8.8 创建桥接物理网络 (1)新建br0桥接网络,brctl show可以查看(需安装bridge-utils) (2)将宿主机物理网卡IP、掩码、网关、dns(或者dhcp)配置到br0上 (3)删除宿主机物理网卡IP、掩码、网关、dns(或者dhcp)配置 (4)将宿主机物理网卡加入到br0   过程步骤如下 自定义br0...
docker安装jenkins使用npm容器构建Node.js+实现cicd部署 目标: docker中运行jenkins,通过npm容器构建项目,项目资源打包部署到远程主机的目录中。 一、jenkins 的安装 1,配置要求 docker主机IP: 192.168.1.20,系统:centos7 ,需要安装docker,再创建一个jenkins容器,挂载目录: /opt/jenkins 。 部署nginx服务器IP: 192..168.1.41,系统:centos7 ,保存jenkins通过sftp传送过来的项目构建的资源的文件目录:/opt/app, 服务器IP: 192..168.1.41,安装docker,创建一个 nginx容器挂载目录为 /opt/cicd/nginx,用来部署静态资源。 整个流程原理, docker主机安装jenkis-->构建一个nodejs的容器,git源码,打包出静态资源--->通过sftp将打包文件传送到nginx容器所在主机的/opt/app/web目录---> 再将/opt/app/web/目录下的资源,复制到nginx的挂载目录 /opt/cicd/nginx下,当然也可以直接sftp到nginx的目录。 实现项目的静态资...
 
0

docker部署gitlab

发表者:admin分类:云计算容器2021-12-13 17:35:05 阅读[964]
docker部署gitlab 一、前提条件 (1) 存在docker (2) 服务器可以联网(外网) (3) 服务器内存至少4G(内存不够会出现502错误) 内存不足502错误如下图所示: 二、安装 本次安装在CentOS7下进行,下面的命令建议复制到记事本后再从记事本复制 1、查找GitLab镜像docker search gitlab 2、拉取gitlab docker镜像docker pull gitlab/gitlab-ce:latest 3、运行GitLab并运行容器docker run \ -itd \ -p 9980:80 \ -p 9922:22 \ -v /usr/local/gitlab-test/etc:/etc/gitlab \ -v /usr/local/gitlab-test/log:/var/log/gitlab \ -v /usr/local/gitlab-test/opt:/var/opt/gitlab \ --restart always \ --privileged=true \ --name gitlab-test \ gitlab/gitlab-ce 命令解释: -i 以交互模式运行容器,通常与 -t 同时使用命令解释: -t 为容器重新分配一个伪输入终端,通常与 -i 同时使用 -d 后台运行容器,并返回容器ID -p 9980:80 将容器内80端口映射至...
如何在Jenkins上关联Gitee的Webhook 本文通过Jenkins项目的创建和配置与Gitee webhook的配置介绍了如何添加一个关联Jenkins项目的Gitee webhook 创建Jenkins项目 在指定目录下选择新建Item 输入项目名称,选择构建一个自由风格的软件项目并确定,一个Jenkins自定义项目就创建好了,接下来进行设置 Jenkins项目配置 创建项目后默认进入设置,在构建触发器下勾选Gitee webhook 触发构建,此处的URL作为新增Gitee webhook的URL 按照下图所示配置,并点击生成 Gitee Webhook 密码,作为新增Gitee webhook的密码 在Gitee仓库配置Webhooks 进入将要配置Webhooks的Gitee仓库,从管理项进入Webhooks,点击添加 webHook 输入Jenkins项目设置中的Gitee webhook URL和Gitee Webhook 密码,勾选选择事件...
docker compose yaml文件详解Compose和Docker兼容性:    Compose 文件格式有3个版本,分别为1, 2.x 和 3.x    目前主流的为 3.x 其支持 docker 1.13.0 及其以上的版本 常用参数:    version           # 指定 compose 文件的版本    services          # 定义所有的 service 信息, services 下面的第一级别的 key 既是一个 service 的名称         build      # 指定包含构建上下文的路径, 或作为一个对象,该对象具有 context 和指定的 dockerfile 文件以及 args 参数值            context               # context: 指定 Dockerfile 文件所在的路径            dockerfile            # dockerfile: 指定 context 指定的目录下面的 Dockerfile 的名称(默认为 Dockerfile)            args           # args: Dockerfile 在 build 过...
portainerUI添加远程管理docker/podman主机方法两台主机环境,1,centos8+docker+portainerUI     此次作为主控端2,centos8+podman+portainerUI  作为被控端主机。两台主机都安装了portianerUI,但是分别登陆主机,不太方便。portainerUI自带有管理多台容器主机的功能,于是研究了下,如果使用。1,根据UI中添加agent代理的提示内容,如下图。2,下载相关的aget-stack-ce29.yml文件,查看内容如下:version: '3.2'services:  agent:    image: portainer/agent:2.9.3    volumes:      - /var/run/docker.sock:/var/run/docker.sock      - /var/lib/docker/volumes:/var/lib/docker/volumes    ports:      - target: 9001        published: 9001        protocol: tcp        mode: host    networks:      - portainer_agent    deploy:      mode: global      placement:        constraints: [node.plat...
podman+Portainer增加自定义模板并使用堆栈部署nacos容器一,可以直接使用portainerUI界面通过git仓库创建堆栈来部署容器。如下图: 1,堆栈名称:nacos-server 2,仓库 URL:https://github.com/nacos-group/nacos-docker.git 3,Compose 路径:example/standalone-mysql-8.yaml         /这里采用单节点安装。二,添加环境变量,需要导入以下三个文件与TZ时区的相关变量。 1,env/mysql.env  2,env/nacos-standlone-mysql.env 3,example/.env 4,TZ=Asia/Shanghai三,最后直接点 部署,然后查看 nacos的容器,但是使用Web登陆时会出现登陆不了的情况,提示找不到数据库表,可以等mysql容器完成部署后,再重启下nacos的容器,就可以正常使用了。
    总共58页,当前第7页 | 页数:
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17