#1、卸载旧版本(如果安装过旧版本)
yum remove docker docker-common docker-selinux docker-engine
#2、安装需要的软件包
yum install -y yum-utils device-mapper-persistent-data lvm2
#3、设置stable镜像仓库
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo(不推荐)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#4、更新yum包索引
yum makecache fast
#5、查看并安装docker ce(以17.12.1为例)
yum list docker-ce --showduplicates | sort -r
yum -y install docker-ce-17.12.1.ce
#6、配置镜像加速
mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://onvmteff.mirror.aliyuncs.com"]
}
EOF
#7、重启配置和docker
systemctl daemon-reload
systemctl restart docker
#8、测试
docker version
执行这两条命令就可以了,浏览器打开
ip+9010
就可以访问了,密码必须是8位以上,所以我就设置成adminadmin
docker volume create portainer_data
docker run -d -p 9010:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
docker pull centos:7
#拉取基础镜像
docker pull centos:7
#创建目录存放jdk的tar.gz包和Dockerfile文件,要在同一级
cd /usr/local/src
mkdir docker/jdk1.8
cd docker/jdk1.8
mkdir Dockerfile
#编写Dockerfile文件
FROM centos:7
MAINTAINER [email protected]
ADD jdk-8u171-linux-x64.tar.gz /usr/local/jdk
WORKDIR /usr/local/jdk
ENV JAVA_HOME /usr/local/jdk/jdk1.8.0_171
ENV JRE_HOME /usr/local/jdk/jdk1.8.0_171/jre
ENV PATH $JAVA_HOME/bin:$PATH
EXPOSE 22
#创建镜像
cd /usr/local/src/docker/jdk
docker build -t jdk:8 .
# 查看所有的镜像列表
docker image ls
# 运行容器
docker run -d -it --name jdk1.8 jdk:8 /bin/bash
#进入容器
docker exec -it jdk1.8 /bin/bash
java -version # 查看jdk版本
#下载镜像
docker pull mysql:5.7
#创建实例并启动
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
#用数据库工具连接就可以了
#进入mysql容器就可以查看容器信息了
docker exec -it mysql /bin/bash
#进入mysql
mysql -uroot -proot
#mysql配置
vi /mydata/mysql/conf/my.cnf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
#重启mysql使配置生效
docker restart mysql
#拉取镜像
docker pull redis:5.0.8
#创建实例并启动
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis:5.0.8 redis-server /etc/redis/redis.conf
#启动客户端测试
docker exec -it redis redis-cli
#数据持久化,否则退出数据会丢失
cd /mydata/redis/conf
vim redis.conf
appendonly yes
http://www.dockerchina.cn/?id=64
#下载incubator-dubbo-ops-master压缩包并解压
#将代码拉取到idea中修改配置文件,修改完执行clean-install
dubbo.registry.address=zookeeper://192.168.56.101:2181
#在target目录拷贝jar包上传到linux某一目录
#在该目录下编写Dockerfile文件
#FROM hub.c.163.com/xbingo/jdk8
FROM jdk:8(必须有jdk镜像)
ADD ./dubbo-admin-0.0.1-SNAPSHOT.jar /dubbo-admin.jar
EXPOSE 7001
CMD ["java","-jar","/dubbo-admin.jar"]
#构建镜像
docker build -t dubbo-admin:1.0 .
#运行容器
docker run -d -p 8090:7001 --name dubbo-admin dubbo-admin:1.0
#关闭防火墙
systemctl stop firewalld
#永久关闭防火墙
systemctl disable firewalld.service
#重新载入
firewall-cmd --reload
#测试
192.168.56.107:8090
#备选
docker run -p 8090:8080 --name dubbo-admin \
-v /mydata/dubbo/data/:/data/ \
-e dubbo.registry.address=zookeeper://192.168.56.107:2181 \
-e dubbo.admin.root.password=root \
-e dubbo.admin.guest.password=guest \
-d chenchuxin/dubbo-admin
#打开192.168.56.107:8090
#拉取镜像,目前最新是3.4.13
docker pull wurstmeister/zookeeper:latest
#运行容器
docker run -d --name zookeeper -p 2181:2181 -itd wurstmeister/zookeeper:latest
#测试
docker exec -it 容器id /bin/bash
cd bin/
zkCli.sh
#拉取镜像,目前最新是2.12-2.5.0
docker pull wurstmeister/kafka:latest
#创建容器并启动
docker run -d --name kafka -p 9092:9092 \
--link zookeeper \
--env KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 \
--env KAFKA_ADVERTISED_HOST_NAME=192.168.56.101 \
--env KAFKA_ADVERTISED_PORT=9092 \
wurstmeister/kafka:latest
#进入容器修改配置文件
docker exec -it 容器id /bin/bash
cd /opt/kafka_2.12-2.5.0/config
vi server.properties
添加 host.name=192.168.56.101
去掉注释listeners = PLAINTEXT://:9092
修改 advertised.listeners=PLAINTEXT://192.168.56.101:9092
#测试端口
telnet 192.168.56.101 9092
#进入容器测试
cd /opt/kafka_2.12-2.5.0/bin
#创建一个主题:
./kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic mykafka12
#运行一个消息生产者,指定topic为刚刚创建的主题
./kafka-console-producer.sh --broker-list localhost:9092 --topic mykafka12
#新开一个容器窗口运行消费者,指定同样的topic
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic mykafka12 --from-beginning
#若在生产者窗口键入消息,在消费者窗口若能看到,表示kafka搭建成功
https://blog.csdn.net/luohongtuCSDN/article/details/106359023
1、创建容器并配置阿里云
#拉取镜像
docker pull sonatype/nexus3
#启动容器
mkdir /usr/local/software/nexus3/nexus-data ##创建目录挂载容器数据
chmod 777 /usr/local/software/nexus3/nexus-data #更改权限否则会报错
docker run -d -p 8081:8081 --name nexus \
-v /usr/local/software/nexus3/nexus-data:/nexus-data \
-v /etc/localtime:/etc/localtime \
sonatype/nexus3
#登陆http://192.168.56.107:8081,账号默认为admin,密码在/usr/local/software/nexus3/nexus-data目录下的admin.password文件,登陆进去会提示更改密码,选择禁止匿名登录
#创建阿里云maven仓库,并放置在第一位
参考
https://blog.csdn.net/weixin_43420255/article/details/106414133?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5.nonecase
2 、项目发布到nexus
的仓库
2.1 修改maven
的setting.xml
文件
<server>
<id>nexus-publicid>
<username>adminusername>
<password>admin123password>
server>
<server>
<id>nexus-releasesid>
<username>adminusername>
<password>admin123password>
server>
<server>
<id>nexus-snapshotsid>
<username>adminusername>
<password>admin123password>
server>
2.2 修改项目中的pom.xml
,添加以下内容,id
要保持和server
中的一致
<distributionManagement>
<repository>
<id>nexus-releasesid>
<name>maven-releases-repositoryname>
<url>http://192.168.56.107:8081/repository/maven-releases/url>
repository>
<snapshotRepository>
<id>nexus-snapshotsid>
<name>maven-snapshots-repositoryname>
<url>http://192.168.56.107:8081/repository/maven-snapshots/url>
snapshotRepository>
distributionManagement>
2.3 测试:在idea
中对项目选择deploy
就可以在nexus
管理页面看到打包的jar
包了
3、手动上传第三方jar
包,参考https://www.cnblogs.com/MakeInstall/p/11041262.html
或者用命令也可以
mvn deploy:deploy-file -DgroupId=com.google.code.kaptcha -DartifactId=kaptcha -Dversion=2.3 -Dpackaging=jar -Dfile=D:\kaptcha-2.3.2.jar -Durl=http://192.168.172.141:8081/repository/third/ -DrepositoryId=third
4、 下载nexus
的依赖
修改maven
的setting
文件,不需要更改mirror
从nexus下载依赖
在pom.xml
中增加如下仓库配置:
<profiles>
<profile>
<id>publicid>
<repositories>
<repository>
<id>nexus-publicid>
<name>maven repositoryname>
<url>http://192.168.56.107:8081/repository/maven-public/url>
<releases>
<enabled>trueenabled>
releases>
<snapshots>
<enabled>trueenabled>
snapshots>
repository>
repositories>
profile>
profiles>
<activeProfiles>
<activeProfile>publicactiveProfile>
activeProfiles>
#拉取镜像
docker pull nacos/nacos-server:1.1.3
###配置本地目录
mkdir -p /root/nacos/standalone-logs/
##docker启动
docker run -d \
-e MODE=standalone \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=mysql的ip \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=root \
-e MYSQL_SERVICE_DB_NAME=nacos_config \
-p 8848:8848 \
--restart=always \
--name nacos \
-v /root/nacos/standalone-logs/:/home/nacos/logs \
nacos/nacos-server:1.1.3
#nacos_config是自己创建的数据库,导入conf中的sql文件执行