此处我是用的短域名的方式进行制作的Nacos镜像
1.上传对应的Nacos.tar包,并解压缩,赋予目录权限,并修改启动脚本
# 第55行 export MODE="cluster" 改为 standalone
export MODE="standalone"
2.编写dockerfile
#编写对应的dockerfile
FROM tomcat:latest
RUN mkdir -pv /home/application/nacos
COPY nacos /home/application/nacos
RUN chmod +x -R /home/application/nacos
WORKDIR /home/application
EXPOSE 33000
CMD [ "sh", "-c", "/home/application/nacos/bin/startup.sh && tail -f /home/application/nacos/logs/start.out" ]
2.通过docker build构建镜像
docker build nacos:v1.0 .
build:构建镜像的子命令
nacos:v1.0: 制作出的镜像名称为nacos:v1.0
.: 指的是当前目录下
3.通过docker run命令进行启动nacos容器
docker run -d -p 33000:33000 -v /etc/hosts:/etc/hosts nacos:v1.0
#run:表示为启动容器,并拉取对应的镜像,如果本地没有这个镜像,将会从官方仓库拉取
#-d: 代表以守护进程方式进行运行
#--restart=always:代表如果容器宕机后,将自动重启,直到重启成功为止
#-p 33000:33000:代表将容器端口33000暴露到服务器上的33000,通过iptables进行暴露
#-v /etc/hosts:/etc/hosts: 将服务器的/etc/hosts文件进行映射到容器内的/etc/hosts
#nacos:v1.0:指定镜像名称
#下面为输出日志
/opt/java/openjdk/bin/java -Xms512m -Xmx512m -Xmn256m -Dnacos.standalone=true -Dnacos.member.list= -Xlog:gc*:file=/home/application/nacos/logs/nacos_gc.log:time,tags:filecount=10,filesize=100m -Dloader.path=/home/application/nacos/plugins,/home/application/nacos/plugins/health,/home/application/nacos/plugins/cmdb,/home/application/nacos/plugins/selector -Dnacos.home=/home/application/nacos -jar /home/application/nacos/target/nacos-server.jar --spring.config.additional-location=file:/home/application/nacos/conf/ --logging.config=/home/application/nacos/conf/nacos-logback.xml --server.max-http-header-size=524288
nacos is starting with standalone
nacos is starting,you can check the /home/application/nacos/logs/start.out
/opt/java/openjdk/bin/java -Xms512m -Xmx512m -Xmn256m -Dnacos.standalone=true -Dnacos.member.list= -Xlog:gc*:file=/home/application/nacos/logs/nacos_gc.log:time,tags:filecount=10,filesize=100m -Dloader.path=/home/application/nacos/plugins,/home/application/nacos/plugins/health,/home/application/nacos/plugins/cmdb,/home/application/nacos/plugins/selector -Dnacos.home=/home/application/nacos -jar /home/application/nacos/target/nacos-server.jar --spring.config.additional-location=file:/home/application/nacos/conf/ --logging.config=/home/application/nacos/conf/nacos-logback.xml --server.max-http-header-size=524288
,--.
,--.'|
,--,: : | Nacos 2.2.3
,`--.'`| ' : ,---. Running in stand alone mode, All function modules
| : : | | ' ,'\ .--.--. Port: 33000
: | \ | : ,--.--. ,---. / / | / / ' Pid: 33
| : ' '; | / \ / \. ; ,. :| : /`./ Console: http://172.17.0.2:33000/nacos/index.html
' ' ;. ;.--. .-. | / / '' | |: :| : ;_
| | | \ | \__\/: . .. ' / ' | .; : \ \ `. https://nacos.io
' : | ; .' ," .--.; |' ; :__| : | `----. \
| | '`--' / / ,. |' | '.'|\ \ / / /`--' /
' : | ; : .' \ : : `----' '--'. /
; |.' | , .-./\ \ / `--'---'
'---' `--`---' `----'
2024-03-05 03:16:10,728 INFO Tomcat initialized with port(s): 33000 (http)
2024-03-05 03:16:10,853 INFO Root WebApplicationContext: initialization completed in 4717 ms
2024-03-05 03:16:30,398 INFO Adding welcome page: class path resource [static/index.html]
2024-03-05 03:16:30,949 WARN You are asking Spring Security to ignore Ant [pattern='/**']. This is not recommended -- please use permitAll via HttpSecurity#authorizeHttpRequests instead.
2024-03-05 03:16:30,950 INFO Will not secure Ant [pattern='/**']
2024-03-05 03:16:30,975 INFO Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@a6c54c3, org.springframework.security.web.context.SecurityContextPersistenceFilter@2ed71727, org.springframework.security.web.header.HeaderWriterFilter@414f87a9, org.springframework.security.web.csrf.CsrfFilter@46e3559f, org.springframework.security.web.authentication.logout.LogoutFilter@62f11ebb, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@65bb6275, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@47c7a9e5, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@580fd26b, org.springframework.security.web.session.SessionManagementFilter@6e31d989, org.springframework.security.web.access.ExceptionTranslationFilter@3b83459e]
2024-03-05 03:16:31,009 INFO Exposing 1 endpoint(s) beneath base path '/actuator'
2024-03-05 03:16:31,059 INFO Tomcat started on port(s): 33000 (http) with context path '/nacos'
2024-03-05 03:16:31,087 INFO Nacos started successfully in stand alone mode. use embedded storage