J'utilise une instance de serveur EC2. Utilisé ce qui suit pour installer Jenkins:
wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | Sudo apt-key add -
Sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
Sudo apt-get update
Sudo apt-get install jenkins
mais je dois installer un logiciel sur le serveur Jenkins donc dans mon instance EC2 je l'ai fait
Sudo –s –H –u jenkins
entrer dans le serveur Jenkins . Puis j'ai essayé de le faire
Sudo cabal install quickcheck
mais cela m’a incité à utiliser le mot de passe Jenkins ... Je cherche depuis environ 4 heures sur Internet et rien ne m’aide à obtenir les privilèges administratifs sur le serveur Jenkins.
Je construis donc mon projet à l'aide de la commande suivante dans Shell:
Sudo cabal clean
Sudo cabal configure
Sudo cabal build
Sudo cabal install
C'est l'erreur que j'obtiens:
Started by timer
Building in workspace /var/lib/jenkins/jobs/Finance/workspace
Checkout:workspace / /var/lib/jenkins/jobs/Finance/workspace - hudson.remoting.LocalChannel@eea6dc
Using strategy: Default
Last Built Revision: Revision b638e2182dece0ef1a40232b1d75fa3ae5c01a5d (Origin/master)
Fetching changes from 1 remote Git repository
Fetching upstream changes from Origin
Commencing build of Revision b638e2182dece0ef1a40232b1d75fa3ae5c01a5d (Origin/master)
Checking out Revision b638e2182dece0ef1a40232b1d75fa3ae5c01a5d (Origin/master)
[workspace] $ /bin/sh -xe /tmp/hudson3500373817395137440.sh
+ Sudo cabal clean
Sudo: no tty present and no askpass program specified
Sorry, try again.
Sudo: no tty present and no askpass program specified
Sorry, try again.
Sudo: no tty present and no askpass program specified
Sorry, try again.
Sudo: 3 incorrect password attempts
Build step 'Execute Shell' marked build as failure
Sending e-mails to: [email protected]
ERROR: Could not connect to SMTP Host: localhost, port: 25
javax.mail.MessagingException: Could not connect to SMTP Host: localhost, port: 25;
nested exception is:
Java.net.ConnectException: Connection refused
at com.Sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.Java:1934)
at com.Sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.Java:638)
at javax.mail.Service.connect(Service.Java:295)
at javax.mail.Service.connect(Service.Java:176)
at javax.mail.Service.connect(Service.Java:125)
at javax.mail.Transport.send0(Transport.Java:194)
at javax.mail.Transport.send(Transport.Java:124)
at hudson.tasks.MailSender.execute(MailSender.Java:116)
at hudson.tasks.Mailer.perform(Mailer.Java:117)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.Java:19)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.Java:814)
at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.Java:786)
at hudson.model.Build$BuildExecution.post2(Build.Java:183)
at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.Java:733)
at hudson.model.Run.execute(Run.Java:1592)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.Java:46)
at hudson.model.ResourceController.execute(ResourceController.Java:88)
at hudson.model.Executor.run(Executor.Java:237)
Caused by: Java.net.ConnectException: Connection refused
at Java.net.PlainSocketImpl.socketConnect(Native Method)
at Java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.Java:339)
at Java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.Java:200)
at Java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.Java:182)
at Java.net.SocksSocketImpl.connect(SocksSocketImpl.Java:391)
at Java.net.Socket.connect(Socket.Java:579)
at com.Sun.mail.util.SocketFetcher.createSocket(SocketFetcher.Java:286)
at com.Sun.mail.util.SocketFetcher.getSocket(SocketFetcher.Java:231)
at com.Sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.Java:1900)
... 17 more
Finished: FAILURE
Voici comment vous pouvez y remédier:
/var/lib/jenkins/config.xml
<useSecurity>true</useSecurity>
par false Sudo service jenkins restart
allow anyone to do anything
et autorisez l'inscription de l'utilisateur.www.yoursite.com/securityRealm/addUser
et créer un utilisateurallow anyone to do anything
par ce que vous voulez réellement que les utilisateurs puissent faire. Dans mon cas, c'est allow logged in users to do anything
.Si vous avez installé avec apt-get dans Ubuntu 14.04, vous trouverez le mot de passe par défaut dans/var/lib/jenkins/secrets/initialAdminPassword location.
Avant d'installer jenkins, créez un utilisateur nommé jenkins et définissez le mot de passe à cet emplacement. Ensuite, après avoir installé jenkins, vous pouvez utiliser le mot de passe que vous avez créé.
Avec l'installation par défaut de Jenkins utilisant Homebrew sur macOS, le mot de passe initial pour l'utilisateur admin
sera généré:
Sudo cat /Users/Shared/Jenkins/Home/secrets/initialAdminPassword
le mot de passe administrateur par défaut de jenkins est enregistré dans le fichier journal d'ubuntu.
le fichier journal est situé dans le dossier /var/log/jenkins/jenkins.log
le mot de passe sera placé après cela, La configuration initiale de Jenkins est requise. Un utilisateur admin a été créé et un mot de passe a été généré . Veuillez utiliser le mot de passe suivant pour procéder à l'installation:
Par défaut, le compte Jenkins est créé sans mot de passe et avec le shell de connexion sous la forme /bin/false
.
jenkins:x:496:493:Jenkins Continuous Integration Server:/var/lib/jenkins:/bin/false
Changez le shell en /bin/bash
et vous devriez pouvoir vous connecter sans mot de passe par Sudo su - jenkins
.
La commande pour changer le shell est:
chsh -s /bin/bash jenkin
Une fois Jenkins installé, exécutez simplement Sudo cat /var/lib/jenkins/secrets/initialAdminPassword
.
Dans la page de connexion Jenkins:
User: admin
Password: the output from the above command
Je ne crois pas que l'utilisateur Jenkins installé via apt ait un mot de passe. Si c'est le cas, je n'ai jamais vu de documentation. Sur la base des commandes que vous avez entrées, je suppose que vous utilisez une distribution Debian?
Y a-t-il une raison particulière pour laquelle vous devez utiliser l'utilisateur jenkins pour effectuer l'installation à la place de l'utilisateur configuré lors de la création de votre instance?
Semblable à la réponse Ubuntu ci-dessus, le mot de passe par défaut de l'administrateur Windows est stocké dans {répertoire d'installation jenkins}\secrets\initialAdminPassword fichier (l'emplacement d'installation par défaut le serait dans C:\Program Files (x86)\Jenkins\secrets\initialAdminPassword )
J'exécutais Jenkins en exécutant Java -jar jenkins.war
.
Dans mon cas, Jenkins a écrit webroot dans une sortie standard: webroot: $user.home/.jenkins
. La clé secrète de l'administrateur a donc été placée dans un ~/.jenkins/secrets/initialAdminPassword
.
Lors de l'installation de Jenkins depuis AWS Marketplace. . .
"Un utilisateur par défaut" admin "avec l'identifiant d'instance comme mot de passe est créé pour sécuriser l'instance de Jenkins."
Sur la console AWS pour EC2, avec l'instance sélectionnée, choisissez l'onglet "Instructions d'utilisation":
"Instructions d'utilisation de AWS Marketplace Dernières versions: 2.19.4.2 Un utilisateur" admin "par défaut avec l'identifiant d'instance comme mot de passe est créé pour sécuriser l'instance Jenkins. Une fois l'instance démarrée, copiez le nom d'hôte DNS public de le serveur dans AWS Management Console et entrez-le dans votre navigateur Web.L'écran d'accueil vous permet de demander une licence d'évaluation, de démarrer et d'évaluer, de saisir une clé de licence ou de vous connecter à votre instance au centre d'opérations. Votre instance est entièrement fonctionnelle. Nous vous recommandons d’activer la sécurité et les sauvegardes. Vous pouvez vous connecter au serveur avec SSH en utilisant l’utilisateur linux "ubuntu". JENKINS_HOME se trouve sous "/ var/lib/jenkins". Jenkins écoute sur les ports suivants : * HTTP 80: via HAProxy, peut être configuré pour utiliser HTTPS: 443 à la place * Jenkins SSH 2222: principalement pour le plug-in CloudBees Git Validated Merge * Jenkins JNLP 10000: communication à partir d'agents Jenkins ou de l'interface de ligne de commande Jenkins configurée pour utiliser le protocole JNLP. par défaut sur les groupes de sécurité. "
Vous pouvez toujours désactiver la sécurité , puis y entrer et la réactiver avec les paramètres souhaités.
Lorsque vous installez jenkins sur votre ordinateur local, le nom d'utilisateur par défaut est admin et le mot de passe est automatiquement renseigné.