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
- 启动容器
docker run --hostname my-rabbit --name rabbitmq -p 15671:15672 -p 5671:5672 --restart always -d rabbitmq
- 进入容器目录
docker exec -it 容器id /bin/bash
- 安装插件
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/容器名称]
-
浏览器访问地址:http://[ip地址]:[配置的端口号]
-
通过网页进行访问:创建 maven2(proxy)仓库
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NegqovGw-1668948682671)(linux运维指南.assets/image-20221120161543765.png)]
- 配置阿里云镜像仓库地址:https://maven.aliyun.com/nexus/content/groups/public
- 配置优先级:点开公用的仓库组 maven-public
- 使阿里云仓库优先级高于 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
手动上传:
- 打开nexus的管理页面
- 选择指定的仓库并上传本地的jar
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0ZHro5HE-1668948682672)(linux运维指南.assets/image-20221120174441103.png)]
- 写入相关的信息
stributionManagement>
### 2.4.5发布项目和手动上传
```cmd
# 我们在pom.xml中配置如上的配置之后既可以发布项目到指定的仓库当中
mvn deploy
手动上传:
- 打开nexus的管理页面
- 选择指定的仓库并上传本地的jar
[外链图片转存中…(img-0ZHro5HE-1668948682672)]
- 写入相关的信息
以上是关于docker2运维的主要内容,如果未能解决你的问题,请参考以下文章