【整理】【docker】【Linux】整理笔记
1、Linux安装docker
参考文章:https://blog.csdn.net/yanpenglei/article/details/78944553
Docker 要求系统的内核版本高于 3.10
查看内核uname -r
安装yum命令
sudo apt install yum
由于 apt 源使用 HTTPS 以确保软件下载过程中不被篡改,故添加使用HTTPS 传输的软件包以及 CA 证书
sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common
鉴于国内网络问题,强烈建议使用国内源,官方源下载不稳定。为了确认所下载软件包的合法性,需要添加软件源的 GPG 密钥
curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
向 source.list 中添加 Docker 软件源
sudo add-apt-repository \ "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \ $(lsb_release -cs) \ stable"
更新apt软件包索引
apt-get update
安装最新版本的Docker CE
apt-get install docker-ce
在生产系统上,您应该安装特定版本的Docker CE,而不是始终使用最新版本。此输出被截断。列出可用的版本。
apt-cache madison docker-ce
sudo apt-get install docker-ce=<VERSION>
例如:sudo apt-get install docker-ce=17.03.0~ce-0~ubuntu-xenial
【非必要】docker中国加速:docker pull registry.docker-cn.com/library/ubuntu:16.04
2、启动、停止、开机启动
启动:systemctl start docker->docker -v
开机启动:systemctl enable docker
停止:systemctl stop docker
查看是否启动:docker version
没启动
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
3、常用命令&操作
查看所有本地镜像:docker images
检索:docker search 关键字 【例如检索redis:docker search redis】
拉取:docker pull 镜像名:tag【:tag是可选的,tag表示标签,多为软件的版本,默认是latest】
删除指定的本地镜像:docker rmi image-id【如上图的第3列】
4、容器常用操作
启动容器:docker start 容器id【如上图的第3列】
查看运行中的容器:docker ps
查看所有的容器:docker ps -a
停止容器:docker stop 容器的id
强制停止容器:docker kill 容器的id
删除一个容器:docker rm 容器id
进入指定容器:docker exec -it 实例id bash
5、安装tomcat
搜索tomcat镜像:docker search tomcat
拉取tomcat镜像:docker pull tomcat【默认latest】
根据tomcat镜像启动容器:docker run --name mytomcat -d tomcat:latest
或者->启动一个做了端口映射的tomcat:docker run -d -p 8888:8080 tomcat【-d:后台运行,-p: 将主机的端口映射到容器的一个端口 主机端口:容器内部的端口】
6、安装mysql
拉取:docker pull mysql
启动一个做了端口映射的mysql:docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql
连接Mysql数据库:docker exec -it 实例id bash
然后正常登录
设置远程可以连接:设置root用户任意ip可以通过密码123456访问:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
刷新权限:flush privileges;
7、安装JDK
拉取:docker pull primetoninc/jdk:1.8
启动:docker run -d -it --name jdk 镜像id或者名称加tag /bin/bash【docker run -d -it --name jdk primetoninc/jdk:1.8 /bin/bash】
8、安装redis
拉取:docker pull redis
启动一个做了端口映射的redis:docker run --name redis -p 6379:6379 -d redis --requirepass "123456"
连接redis数据库:docker exec -it 实例id redis-cli
查看用户密码【已经连接上redis】:config get requirepass
9、安装mongodb
拉取:docker pull mongo
启动一个做了端口映射的mongo:docker run -p 27017:27017 -v /tmp/db:/data/db -d mongo
连接:docker exec -it 镜像id /bin/bash
然后正常登录
10、安装rabbitmq
拉取带有management的有web管理页面:docker pull rabbitmq:3-management
启动一个做了端口映射的rabbitmq:ocker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq 镜像id【docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:3-management】
浏览器访问:http://ip:15672
11、安装elasticsearch
拉取:docker pull elasticsearch【如果不行:docker pull elasticsearch:6.5.4,或者:docker pull elasticsearch:5.6.11】
运行:docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 --name elasticsearch elasticsearch:6.5.4【elasticsearch的java程序,默认启动占用2G内存】【如果不行:docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 --name elasticsearch5.6.11 镜像id】
查看是否可以连接:curl 127.0.0.1:9200
或者浏览器访问:http://ip:9200
12、安装zookeeper
拉取:docker pull zookeeper
运行带端口映射:docker run --name zookeeper -p 2181:2181 --restart always -d zookeeper
进入容器:docker exec -it 容器id bash
连接dubbo查看有什么服务:./zkCli.sh【如果不行:bin/zkCli.sh】
13、安装solr
拉取:docker pull solr
启动一个做了端口映射的solr:docker run -d -p 8983:8983 solr【-d:后台运行,-p: 将主机的端口映射到容器的一个端口 主机端口:容器内部的端口】
创建core:docker exec -it --user=solr 容器id bash bin/solr create_core -c mycore【--user=solr
用默认启动容器自动创建solr用户执行命令,-c mycore
-c=命名,mycore=名称】
Linux的docker安装solr并创建core
14、和docker相互转送文件
往docker传文件:docker cp 本地文件的路径 容器id:<docker容器内的路径>
例如:docker cp /myfile/ik-analyzer-solr7-7.x.jar d8c86a18fecc:/opt/solr-8.1.1/server/solr-webapp/webapp/WEB-INF/lib/ik-analyzer-solr7-7.x.jar
从docker里取出文件:docker cp 容器id:<docker容器内的路径> <本地保存文件的路径>
例如:docker cp d8c86a18fecc:/opt/solr-8.1.1/server/solr-webapp/webapp/WEB-INF/lib/ik-analyzer-solr7-7.x.jar /myfile/ik-analyzer-solr7-7.x.jar
15、安装jenkins
拉取:docker pull jenkins
创建一个jenkins目录:mkdir /home/jenkins_home
启动一个做了端口映射的jenkins:docker run -itd -p 9090:8080 -p 50000:50000 --name jenkins --privileged=true -v /home/jenkins_home:/home/jenkins_home jenkins:latest
【注:如果ip:9090登陆后一直再等待启动,那么得修改一下文件
1、搜索find / -name hudson.model.UpdateCenter.xml
2、修改vi /var/lib/docker/volumes/56cbcc5ca33974a063627f7a596f26e93de8c7e3e8d0aa54882f9f56f92dfb12/_data/hudson.model.UpdateCenter.xml
然后按i
http://mirror.xmission.com/jenkins/updates/update-center.json
按ESC退出再按:wq回车,注意别少英文分号
最后重新docker restart jenkins
】
获取密码:docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
思维导图:https://www.edrawsoft.cn/viewer/public/s/4215c210279421