装置 Docker 容器
Docker 官网装置地址
https://docs.docker.com/engin…
第一步:装置 yum-utils(治理 repository 及扩大包的工具, 可提供 yum 操作性能)
sudo yum install -y yum-utils
- sudo 让普通用户具备一般治理元的权限执行操作
- Yum 是一个 RedHat 以及 CentOS 中的 Shell 软件包管理器
第二步:设置 docker 装置镜像
sudo yum-config-manager –add-repo https://download.docker.com/l…
第三步:装置 docker-ce (CE- Community Edition 是社区版)
sudo yum install docker-ce docker-ce-cli containerd.io
第四步:启动 docker (systemclt 指令用于启动、敞开服务等)
sudo systemctl start docker
第五步:设置 docker 自启动(操作系统启动时 docker 也启动)
FAQ:运行 yum 时呈现 /var/run/yum.pid 已被锁定,PID 为 xxxx 的另一个程序正在运行的问题解决
删除文件后再次运行 yum
rm -f /var/run/yum.pid
Docker 减速设计
- 创立目录: sudo mkdir -p /etc/docker
- 镜像设置: sudo tee /etc/docker/daemon.json <<-‘EOF’
{
“registry-mirrors”: [“https://ar2qkqym.mirror.aliyuncs.com”]
}
EOF - 从新加载配置: sudo systemctl daemon-reload
-
重启 docker: sudo systemctl restart docker
装置 JDK 软件
镜像形式装置
第一步:拉取镜像(从 hub.docker.com)
docker pull benwang6/tedu-jdk
第二步:查看镜像
docker images
第三步:测试 - 从镜像运行启动容器,在容器中运行 java -jar
docker run -d -p 9411:9411 -v /root/libs/sca/:/sca –entrypoint java benwang6/tedu-jdk -jar /sca/zipkin-server-2.23.2-exec.jar
docker 在后盾 (-d) 启动运行一个容器 (过程),并将 /root/libs/sca 目录中的资源挂载(-v) 到 /sca 挂载点,将容器端口 9411 映射到宿主机端口 9411,而后通过 java 指令执行挂在点资源(其中 zipkin-server-2.23.2-exec.jar 文件为咱们要执行的挂载点文件),--entrypoint 的含意为笼罩镜像中写的 entrypoint 选项(这个镜像文件中有写 entrypoint 选项),注 --entrypoint 指令的地位
本人制作镜像
第一步:拉取 centos 空的镜像(制作镜像时须要有一个空的 centos:7 镜像)
docker pull centos:7
第二步:创立目录并在目录中间接通过 vim 编辑此文件(通过 mkdir 指令实现)
mkdir jdk
第三步:在 jdk 目录下创立通过 vim 指令编辑 Dockerfile 文件(文件不存在主动创立)
vim Dockerfile #留神文件的大小写(制作镜像时有严格标准)
文件内容如下:FROM centos:7
ADD jdk-8u51-linux-x64.tar.gz /usr/local/docker
ENV JAVA_HOME=/usr/local/docker/jdk1.8.0_51 \
PATH=/usr/local/docker/jdk1.8.0_51/bin:$PATH
CMD ["bash"]
保留退出。
第三步:构建镜像(- t 示意为镜像起个名字,名字前面的点示意当前目录)
docker build -t jdk:8 .
第四步:查看构建的镜像
docker images
第五步:测试镜像文件
docker run -d -p 9411:9411 -v /root/libs/sca/:/sca jdk:8 java -jar /sca/zipkin-server-2.23.2-exec.jar
第六步: 通过如下指令查看服务是否已启动
docker ps
第七步:保留镜像并起各名字 (可选,如果要将镜像传给他人能够间接上面的操作)
docker save jdk:8 | gzip>linux-jdk8.gz
接管并执行 load
docker load -i linux-jdk8.gz
FAQ:
如何看 docker 中镜像? docker images
如何删除 docker 中镜像?docker image rm 镜像名或 imageId
如何加载本地镜像?docker load –i 镜像名
如何启动容器?docker run。。。。。
如何查看正在运行的容器?docker ps
如何查看所有容器?(蕴含启动失败和进行容器)?docker ps –a
如何进行正在运行容器? docker stop 容器 id
如何重启容器? docker restart 容器 id
如何删除处于终止状态的容器?docker container prune
如何删除处于运行状态的容器(不举荐)?docker container rm –f 容器 id
如何查问启动容器的日志?docker container logs 容器 id
如何查看容器详细信息? docker container inspect 容器 id
查看 docker 容器选项信息?docker contianer
间接装置形式
:上传 JDK 安装包
:解压 JDK 文件
tar -xvf jdk-7u51-linux-x64.tar.gz
:配置环境变量
阐明: 批改 Linux 零碎中环境变量须要批改 /etc/profile 文件
命令:vim /etc/profile
配置文件变量
#set java env
JAVA_HOME=/usr/local/src/java/jdk1.7.0_51
JAVA_BIN=/usr/local/src/java/jdk1.7.0_51/bin
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH
:环境变量失效:
source /etc/profile
:检测 jdk:
java -version
装置 Database 软件
装置 MySql 数据库
第一步:在 hub.docker.com 上搜寻 mysql 镜像
第二步:拉取指定版本的 mysql
sudo docker pull mysql:8.0.23
第三步:查看 mysql 镜像
sudo docker images
第四步:启动运行 mysql 镜像 (docker run 用于启动一个容器)
sudo docker run -p 3306:3306 --name mysql \
-v /usr/local/docker/mysql/mysql-files:/var/lib/mysql-files \
-v /usr/local/docker/mysql/conf:/etc/mysql \
-v /usr/local/docker/mysql/logs:/var/log/mysql \
-v /usr/local/docker/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:8.0.23
如果装置过程中失败了,则可通过 docker ps -a 查看以前的容器,如果已存在,则通过 docker rm 镜像 id 删除再重新安装即可
第五步:启动 mysql
docker start mysql
第六步:查看 docker 启动的服务
docker ps
第七步:进入容器 (退出容器用 exit)
sudo docker exec -it mysql bash
第八步:登陆
mysql -uroot -p
第九步:设置 mysql 开机自启动(可选)
docker update mysql --restart=always
FAQ
重启 mysql:
docker restart mysql
查看 mysql 装置门路:
whereis mysql
创立 mysql 账户并为其设置权限
create user‘tony’@’%’identified by‘tony’;
grant all on *.* to‘tony’@‘%’;
敞开防火墙:
sudo systemctl stop firewalld.service
重启 docker:
sudo systemctl restart docker
###### 装置 Redis 内存数据库
第一步:下载镜像文件
docker pull redis
第二步:创立 redis 实例并启动
创立 redis 配置文件目录:
mkdir -p /usr/local/docker/redis/conf
在配置文件录下创立 redis.conf 配置文件
(因为 redis 镜像中这个 redis.conf 是一个目录所以要先创立一个这个配置文件,否在咱们本地挂载点也会变成一个目录):
touch /usr/local/docker/redis/conf/redis.conf
sudo docker run -p 6379:6379 --name redis \
-v /usr/local/docker/redis/data:/data \
-v /usr/local/docker/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf
第三步:查看正在运行的过程
docker ps
第四步:控制台间接连贯 redis 测试
docker exec -it redis bash
第五步:检测 redis 版本
Redis-server –v
或者
redis-cli -v
第五步:登录 redis(默认不须要明码)
redis-cli
或者
docker exec -it redis redis-cli
FAQ
进行 redis:
docker stop redis
启动 redis:
docker start redis
重启 redis:
docker restart redis
查看 redis 版本:
docker exec -it redis redis-server -v
装置分布式中间件
装置 Ngnix 代理
- docker pull nginx:latest
- docker images
- docker run –name nginx -d nginx
检测装置的内容 docker exec nginx ls -l /etc/nginx
第四步:拷贝装置好的配置文件
docker cp -a nginx:/etc/nginx /usr/local/docker/nginx
这里是将 docker 中的 nginx 复制到宿主机的 nginx 目录
第五步:强制卸载刚刚装置的 nginx
docker rm -f nginx
第六步:启动 nginx 容器,运行 nginx 镜像
sudo docker run -p 80:80 --restart always --name nginx \
-v /usr/local/docker/nginx/:/etc/nginx/ \
-d nginx