Skip to content

安装docker

bash
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh --mirror Aliyun
sudo systemctl enable docker
sudo systemctl start docker
echo '{
  "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ]
}' >> /etc/docker/daemon.json

systemctl daemon-reload
systemctl restart docker
DOCKER_CONFIG=/usr/local/lib/docker/cli-plugins
sudo mkdir -p $DOCKER_CONFIG/cli-plugins
sudo curl -SL https://download.fastgit.org/docker/compose/releases/download/v2.6.1/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose
chmod +x $DOCKER_CONFIG/cli-plugins
docker compose version

安装docker compose

部署jenkins

命令行部署

shell
mkdir jenkins
chmod 777 jenkins
cd jenkins
# 记录下面的密码
docker run --name jenkins -p 8080:8080 -p 50000:50000 -v $PWD:/var/jenkins_home --rm -it jenkins/jenkins:lts-jdk11
docker run --name jenkins -p 8080:8080 -p 50000:50000 -v $PWD:/var/jenkins_home -d --restart always jenkins/jenkins:lts-jdk11

使用docker compose部署

yaml
version: "3"
volumes:
    jenkins_home:
services:
    jenkins:
        image: jenkins/jenkins:lts-jdk11
        container_name: jenkins
        ports:
            - "8080:8080"
            - "50000:50000"
        volumes:
            - jenkins_home:/var/jenkins_home

部署snoar

yaml
# docker-compose.yml
version: "3"
services:
  sonarqube:
    image: sonarqube:community
    hostname: sonarqube
    container_name: sonarqube
    depends_on:
      - db
    environment:
      SONAR_JDBC_URL: jdbc:postgresql://db:5432/sonar
      SONAR_JDBC_USERNAME: sonar
      SONAR_JDBC_PASSWORD: sonar
    volumes:
      - sonarqube_data:/opt/sonarqube/data
      - sonarqube_extensions:/opt/sonarqube/extensions
      - sonarqube_logs:/opt/sonarqube/logs
    ports:
      - "9000:9000"
  db:
    image: postgres:12
    hostname: postgresql
    container_name: postgresql
    environment:
      POSTGRES_USER: sonar
      POSTGRES_PASSWORD: sonar
      POSTGRES_DB: sonar
    volumes:
      - postgresql:/var/lib/postgresql
      - postgresql_data:/var/lib/postgresql/data

  jenkins:
    image: jenkins/jenkins:lts-jdk11
    container_name: jenkins
    ports:
        - "8080:8080"
        - "50000:50000"
    volumes:
        - jenkins_home:/var/jenkins_home

volumes:
  sonarqube_data:
  sonarqube_extensions:
  sonarqube_logs:
  postgresql:
  postgresql_data:
  jenkins_home:
sh
sysctl -w vm.max_map_count=262144
docker compose up 
docker compose start

搭建内网测速服务器

docker run -it --rm --name speedtest -p 9100:80 adolfintel/speedtest
docker run --name speedtest -p 9100:80 --restart always -d adolfintel/speedtest