最近学了 docker 这个引擎,发现用 dockr 来安装各种容器简直不要太简单,除去了传统的下载安装包、传上服务器、安装各种繁琐步骤,直接通过 docker 的指令,做到快速下载,快速安装。记个笔记,方便以后可以用到。
一、查询是否有 docker
yum list installed | grep docker
二、安装 docker
yum install docker -y
三、卸载 docker
yum remove docker -y
(
注:如果是 centos8 ,不能直接 yum install docker -y 安装
curl https://download.docker.com/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker-ce.repo
yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm
yum install docker-ce -y
)
四、启动 docker
systemctl start docker
五、停止 docker
systemctl stop docker
六、重启 docker
systemctl restart docker
=============================使用==============================
官方仓库:http://hub.docker.com
docker原理:启动服务 - 下载镜像 - 启动到一个容器 - 运行程序
七、搜索(官网搜索,复制下载指令到linux)
docker search tomcat
八、下载
docker pull tomcat(官方仓库找到对应)
九、查看已下载
docker images
十、查看运行的容器
docker ps
十、运行容器
docker run tomcat 前台运行
docker run -d tomcat 后台运行加 -d 参数
十一、关闭容器
docker stop 通过docker ps指令查询的容器id
十二、进入容器
docker exec -it 容器id bash
十三、退出容器
exit
十四、删除容器
docker rm 容器名
十五、一次停止所有运行中的容器
docker stop ${docker ps -q}
十六、一次删除所有运行中的容器
docker rm ${docker ps -aq}
十七、一次停止并删除所有运行中的容器
docker stop ${docker ps -q} & docker rm ${docker ps -aq}
十八、删除镜像
dockre rmi 容器名
=============================安装==============================
安装tomcat:(使用容器如果访问404,有可能是容器下webapps内容为空)
一、搜索(官网搜索,复制下载指令到linux)
docker search tomcat
二、下载
docker pull tomcat(官方仓库找到对应)
三、查看已下载
docker images
四、查看运行的容器
docker ps
五、运行容器
docker run tomcat 前台运行
docker run -d -p 8080:8080 tomcat 后台运行加 -d 参数,-p -8080:8080 表示端口代理,因为tomcat是在docker中的一个容器,docker是linux中的一个引擎,无法直接访问到内部tomcat
六、停止容器
docker stop 通过docker ps指令查询的容器id
七、进入容器
docker exe -it 容器id bash
八、退出容器
exit
安装redis:
一、搜索
二、下载
docker pull redis
三、查看已下载
docker images
四、运行容器
docker run tomcat 前台运行
docker run -d -p 6379:6379 redis 后台运行加 -d 参数,-p 6379:6379 表示端口代理,因为redis是在docker中的一个容器,docker是linux中的一个引擎,无法直接访问到内部redis
五、停止容器
docker stop 通过docker ps指令查询的容器id
六、进入容器
docker exec -it 容器id bash
七、退出容器
exit
八、使用redis(进入容器 - 连接redis客户端 - 使用命令)
一、docker exec -it 容器id /bin/bash //进入容器
二、redis-cli //redis-cli 连接redis客户端
三、keys * //常规指令
注:挂载时修改 redis 配置文件中的protected-mode yes 为no,redis才能被外部访问,则需要挂载配置文件(docker安装没有配置文件)
挂载配置文件
一、创建文件夹(用于存放配置文件)
mkdir -p /home/docker/redis/conf/
mkdir -p /home/docker/redis/data/
二、下载配置,去官网下载即可,http://www.redis.cn/download.html
三、授权文件
chmod -R 777 /home/docker/
四、启动redis容器
docker run -p 6379:6379 -v /home/docker/redis/conf/redis.conf:/etc/redis/redis.conf -v /home/docker/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes
安装mysql:
一、下载
docker pull mysql:5.7.39
二、运行容器
docker run -p 3306:3306 -e MYSQL_DATABASE=workdb -e MYSQL_ROOT_PASSWORD=密码 -d mysql:5.7.39
三、进入容器
docker exec -it 容器id bash
四、修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
安装nginx:
一、下载
docker pull nginx
二、运行容器
docker run -p 80:80 -d nginx
三、进入容器
docker exec -it 容器id bash
四、本地访问
http://ip:80
五、将linux文件拷贝到容器下
docker cp 拷贝文件路径 容器id:容器下指定目录
安装zookeeper
一、下载
docker pull zookeeper
二、运行
docker run -p 2181:2181 -d zookeeper
三、进入容器
docker exec -it 容器id bash
四、访问
安装ActiveMq:
一、下载
二、运行
三、进入容器
四、访问
安装jdk:(这里用构建方法)
一、上传tar-gz包到/usr/local/docker/jdk下(如果没有自己创建)
二、在目录下创建Dockerfile文件
vim Dockerfile
三、写dockerfile文件内容
FROM centos:centos8
MAINTAINER yuqn
# 新建目录(docker中的)
RUN mkdir /usr/local/jdk
WORKDIR /usr/local/jdk
# 将jdk文件拷贝到容器/usr/local/jdk/并解压到docker中 /usr/local/jdk目录下
ADD openjdk-8u41-b04-linux-x64-14_jan_2020.tar.gz /usr/local/jdk
# 设置环境变量 ,文件是解压缩后文件名,有可能跟压缩包名不一样
ENV JAVA_HOME /usr/local/jdk/java-se-8u41-ri
ENV JRE_HOME /usr/local/jdk/java-se-8u41-ri/jre
ENV CLASSPATH .:${JAVA_HOME}/lib:${JRE_HOME}/lib
ENV PATH $JAVA_HOME/bin:$PATH
四、构建镜像
docker build -t jdk1.8 .
五、运行容器
docker run -id 容器名
六、进入容器
docker exec -it 容器id /bin/bash
七、查看版本
java -version
安装 nacos(单机、mysql):
一、下载
docker pull nacos/nacos-server
二、挂载目录,用于映射到容器
mkdir -p /home/docker/nacos/logs/
mkdir -p /home/docker/nacos/init.d/
三、修改配置文件
vim /home/docker/nacos/init.d/custom.properties
内容如下:
server.contextPath=/nacos
server.servlet.contextPath=/nacos
server.port=8848
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos_devtest_prod?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=user
db.password=pass
nacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false
management.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false
server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i
nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
nacos.naming.distro.taskDispatchThreadCount=1
nacos.naming.distro.taskDispatchPeriod=200
nacos.naming.distro.batchSyncKeyCount=1000
nacos.naming.distro.initDataRatio=0.9
nacos.naming.distro.syncRetryDelay=5000
nacos.naming.data.warmup=true
nacos.naming.expireInstance=true
四、执行sql语句
1、下载
https://github.com/alibaba/nacos/blob/master/config/src/main/resources/META-INF/nacos-db.sql
2、在 mysql 中创建数据库,并且执行 sql 语句
3、修改配置文件信息
五、启动容器
docker run --name nacos -d -p 8848:8848 --privileged=true --restart=always -e JVM_XMS=256m -e JVM_XMX=256m -e MODE=standalone -e PREFER_HOST_MODE=hostname -v /home/docker/nacos/logs/ -v /home/docker/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties nacos/nacos-server