After installing Jenkins, the initial download of the plugin always fails, resulting in unsuccessful installation. After retrying several times, it is still stuck at installing the plugin. Here is a record of how to install Jenkins under Docker and solve the problem of initial plugin installation failure. The failure to install the plug-in actually means that the official Jenkins image is pulled, and then when the plug-in is initially installed, it is obtained from a foreign website, resulting in a very slow installation or even a failed installation. The best solution is to pull the Jenkins image provided by the Jenkins Chinese community. Jenkins Chinese official website: https://www.jenkins.io/zh/ Installation steps Get the image
Docker official image repository: https://hub.docker.com/ Find the Jenkins Chinese mirror here Set the jenkins container mount directory After the Jenkins container is started, installation configuration files will be generated. You need to change the generation address of these files to the directory on the Linux server. Purpose: To make it easier to find the configuration when it is modified in the future. Create a Jenkins build directory mkdir /home/jenkins_home Directory authorization chmod 777/home/jenkins_home If the system is not authorized, files cannot be generated after startup. Startup Command
Command Explanation:
Note: 8085 is the access port, and any port that is not occupied can be used. 8080 cannot be changed -p 50000:50000 cannot be changed. /home/jenkins_home/ The local build directory can be customized and is consistent with the directory created and authorized in the previous step /var/jenkins_homeDocker container directory, cannot be changed. access Server IP + custom port example: 192.168.0.200:8085 Initial password docker ps Get the id of the currently running container Docker logs container ID You can see it in the logs log, similar to this Plugin Installation The Jenkins image provided by the Chinese community does not require any settings, it can be installed directly, and the speed is very fast. Appendix - Analysis of failure to install plugins on official images Take the directory mounted by Jenkins above as an example In the jenkins_home directory, the hudson.model.UpdateCenter.xml file defines the configuration address for the plugin to pull. The default address can be accessed directly. You will find that it connects to https://www.google.com/. Due to the firewall, this address has always failed to be accessed. The content of the default.json file in the /jenkins_home/updates directory is the content of the configuration address pulled by the plug-in defined in hudson.model.UpdateCenter.xml. Even if you modify the default.json file content through other blogs, it will be restored immediately when you start it again, so no matter how you modify it, it will not take effect . The mirror provided by the Jenkins Chinese community has been processed, and the configuration address for plug-in pulling has been changed to the domestic mirror address, so the plug-in download is very fast. Jenkins Chinese community's explanation on plugin pulling: https://community.jenkins-zh.cn/t/jenkins/26 https://jenkins-zh.cn/wechat/articles/2019/11/2019-11-11-update-center-mirror-announcement/ Suggest to learn more This is the end of this article about installing Jenkins with Docker and solving the problem of initial plugin installation failure. For more relevant content about installing Jenkins with Docker, please search for previous articles on 123WORDPRESS.COM or continue to browse the following related articles. I hope you will support 123WORDPRESS.COM in the future! You may also be interested in:
|
<<: JS uses map to integrate double arrays
>>: Tutorial on installing MySQL 8.0.11 under Linux
Table of contents Version Notes Create a project ...
Table of contents 1. Determine the entity type be...
Table of contents 01 Background 02 Introduction 0...
Table of contents tool Install the plugin Add a ....
Preparation: 192.168.16.128 192.168.16.129 Two vi...
In the forum, netizens often ask, can I read the ...
Table of contents Preface Implementation ideas Im...
Today I wanted to change the mysql port, but I fo...
1. HTML code Copy code The code is as follows: Ex...
The requirements are as follows: There are multip...
Page domain relationship: The main page a.html bel...
Table of contents 1. Overview 2. Routing Navigati...
Detailed explanation of HTML (select option) in ja...
Table of contents Hidden Problems Solution to ada...
Table of contents Summary of Distributed ID Solut...