docker2运维

Posted Dr.psycho

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker2运维相关的知识,希望对你有一定的参考价值。

1.docker

1.1使用国内镜像加速docker

(1)配置阿里云镜像加速器

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'

  "registry-mirrors": ["https://ncfqcczm.mirror.aliyuncs.com"]

EOF

sudo systemctl daemon-reload
sudo systemctl restart docker

(2)检查镜像加速器是否正常运行

docker info

2.1:(主动检查)显示以下信息证明成功加载:(只要存在即装配成功)

Registry Mirrors:
  https://ncfqcczm.mirror.aliyuncs.com/

2.2:(被动观察)

​ -ps:下载速度明显很慢

1.2 在该网址上检索镜像版本号

https://hub.docker.com/search?q=&type=image

2 docker镜像

2.1rabbitmq

  1. 启动容器
docker run --hostname my-rabbit --name rabbitmq -p 15671:15672 -p 5671:5672 --restart always -d rabbitmq
  1. 进入容器目录
docker exec -it 容器id /bin/bash
  1. 安装插件
rabbitmq-plugins enable rabbitmq_management

2.2reids

1.启动redis

docker run -p 6378:6379 --name redis --restart always -d redis

参数解释:

-p 端口映射 :左边为映射外部端口(实际访问端口) 右边为该程序实际端口

–name 指定名称: 此名称为可以操作镜像的名称 区别于-d后面的名称为显示的名称

–restart :指定docker容器重启/启动时容器的加载状态:always为永远跟随docker容器启动而启动

-d:后台运行 即挂载到后台运行

##2.3安装vim插件

apt-get update
apt-get install vim

2.3mysql

启动命令进行变更:

docker run --name mysql -p 3305:3306 -e MYSQL_ROOT_PASSWORD=root --restart always -d mysql:8 --lower_case_table_names=1

2.4 nexus

docker run --name nexus -p 8088:8081 --restart always -d sonatype/nexus3 

2.4.1获取密码

#进入到容器目录当中
docker exec -it [容器id/容器名称] /bin/bash
#cat密码
cat /nexus-data/admin.password
  • 默认登陆用户名是admin
  • 默认登陆密码是上面cat的密码

2.4.2 配置代理仓库

#查看nexus是否正确启动
docker logs -f [容器id/容器名称]
  1. 浏览器访问地址:http://[ip地址]:[配置的端口号]

  2. 通过网页进行访问:创建 maven2(proxy)仓库

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NegqovGw-1668948682671)(linux运维指南.assets/image-20221120161543765.png)]

  1. 配置阿里云镜像仓库地址:https://maven.aliyun.com/nexus/content/groups/public
  2. 配置优先级:点开公用的仓库组 maven-public
  3. 使阿里云仓库优先级高于 maven中央仓库的优先级

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EFyr3zXN-1668948682672)(linux运维指南.assets/image-20221120162244496.png)]

2.4.3配置maven config

  • 说明:http://[ip]:[端口号]/repository/ (固定的头定位到仓库位置)
  • maven-public 公用的组(这个组就包含了我们配置的那几个仓库)
  • hosted 宿主主机 :用于存储本地的jar
  • proxy 代理主机 : 用于代理仓库如阿里云仓库
  • group 仓库组: 仓库组不会实际生产数据 而是宿主主机和代理主机的集合 方便管理仓库
  • 操作动作:上传组件包括手动上传和自动上传,对于中央仓库管理的jar采用自动上传,对于第三方jar和自己生产的jar使用手动上传
  • 配置动作: 对于需要下载的jar的配置,对于需要手动上传的jar的配置,对于赋予权限的配置
  • 配置范围: maven本地配置 项目内部配置
  • 对应关系: 其实所有id 对应的都是授权 即与servers里面的id建立关联关系
<!--本地访问的仓库路径-->
<localRepository>E:\\repostiry\\maven-ku</localRepository>

<!--在配置文件中修改镜像 :  url对应的是配置的仓库组的url
	所有镜像访问都是通过该仓库组进行映射 不论是第三方jar还是 中央仓库镜像
	当我们去访问这个仓库组的时候 这个仓库组会寻找所有的仓库进行轮询访问来获取镜像
	配置多个镜像 它会从上往下进行寻找,如果仓库对应的是中央仓库则会直接从阿里云仓库中进行寻找,
	找不到的话就会访问我们设置的仓库组
-->
<mirrors>
      
    <mirror>
        <id>nexus-aliyun</id>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
    
    <mirror>
        <id>nexus-public</id>
        <url>http://192.168.113.66:8088/repository/xcong-group/</url>
        <mirrorOf>*</mirrorOf>
    </mirror>
    
</mirrors>

<!--配置访问服务器的权限 
	xcong-release : 自己创建的服务器 主要存储我们自己项目生产的正式jar包
	xcong-snapshot : 主要存储我们生产的快照jar包
用户名/密码-->

<servers>
    
	<server>
      <id>xcong-release</id>
      <username>admin</username>
      <password>admin</password>
    </server>
    
    <server>
      <id>xcong-snapshot</id>
      <username>admin</username>
      <password>admin</password>
    </server>
    
    <server>
        <id>nexus-public</id>
        <username>admin</username>
     	<password>admin</password>
    </server>
    
</servers>

2.4.4 配置pom.xml

pom.xml 和 maven config 是对应的关系

<!--发布配置管理-->
<distributionManagement>
   
	<repository>
         <!--对应关系 repository-id -> servers-server-id -->
    	<id>xcong-release</id>
        <!--对应关系 url 是我们要上传的某个仓库的url -->
        <url>http://192.168.113.66:8088/repository/xcong-release/</url>
    </repository>
    
    <repository>
         <!--对应关系 repository-id -> servers-server-id -->
    	<id>xcong-snapshot</id>
        <!--对应关系 url 是我们要上传的某个仓库的url -->
        <url>http://192.168.113.66:8088/repository/xcong-snapshot/</url>
    </repository>
</distributionManagement>

2.4.5发布项目和手动上传

# 我们在pom.xml中配置如上的配置之后既可以发布项目到指定的仓库当中
mvn deploy

手动上传:

  1. 打开nexus的管理页面
  2. 选择指定的仓库并上传本地的jar

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0ZHro5HE-1668948682672)(linux运维指南.assets/image-20221120174441103.png)]

  1. 写入相关的信息

stributionManagement>


### 2.4.5发布项目和手动上传

```cmd
# 我们在pom.xml中配置如上的配置之后既可以发布项目到指定的仓库当中
mvn deploy

手动上传:

  1. 打开nexus的管理页面
  2. 选择指定的仓库并上传本地的jar

[外链图片转存中…(img-0ZHro5HE-1668948682672)]

  1. 写入相关的信息

以上是关于docker2运维的主要内容,如果未能解决你的问题,请参考以下文章

虚拟机Linux安装PostgreSQL,并让宿主机连接

用户(上)

Python修改paramiko模块开发运维审计保垒机

适合中小企业的自动化运维平台,代码完全开源

linux12企业实战 -- 03docker elasticsearch单机映射文件到宿主机

宿主机-免密登录Docker容器