docker下载centos镜像(用作配置jdk环境系统)
docker pull centos #版本号可以自己加,默认拉取最新的
docker命令docker search xxxx 搜索xxxx镜像
docker pull xxxx 下载xxxx镜像,版本号可以自己加,默认拉取最新的
docker images 查看本地镜像
ctrl+p+q 退出容器
docker ps : 查看当前运行的容器信息(上面的退出方式就会默认关闭容器)
docker ps -a : 查看所有的容器
docker start [容器ID/名称] 启动容器
docker exec -it [容器ID/名称] /bin/bash 进入容器
docker rm -f [容器ID/名称] 删除容器
创建容器
容器是基于镜像创建的,执行镜像生成容器,方可进入容器
启动容器命令: docker run <相关参数> <镜像 ID> <初始命令>
docker run --name xxx --restart=always -i -t -v 本地文件夹路径:/mnt/software/ -p 8081:8081 镜像ID /bin/bash
参数解析
-i:表示以“交互模式”运行容器
-t:表示容器启动后会进入其命令行
-v:表示需要将本地哪个目录挂载到容器中,格式:-v <宿主机目录>:<容器目录>-p:将第二个端口暴露到第一个端口上,格式:8081:8080(将容器的8080端口暴露在8081上)
--name:容器名称
--restart=always:自启动
/bin/bash:一旦容器启动,需要执行的命令,当前使用 "/bin/bash", 表示启动后直接进bash shell/mnt/software是centos的容器里面的目录文件,这里的意思是让本地的某个文件夹路径和容器里的/mnt/software互通
在容器内部安装tomcat8+jdk1.8
下载 tomcat和jdk的 tar包,通过ftp工具上传到宿主服务器的/root/software/文件下,因为前面做了挂载,所以待会进入docker容器里的/mnt/software/文件夹下也是可以看到的
进入centos中的/mnt/software文件夹,
解压:
tar -zxvf jdk-8u202-linux-x64.tar.gz mv jdk1.8.0_202/ /opt/jdk
设置java 环境变量,配置profile
vi /etc/profile
在文件末尾加上
输入i进入插入模式JAVA_HOME=/opt/jdk/ JAVA_BIN=/opt/jdk/bin JRE_HOME=/opt/jdk/jre CLASSPATH=/opt/jdk/jre/lib:/opt/jdk/lib:/opt/jdk/jre/lib/charsets.jar export JAVA_HOME JAVA_BIN JRE_HOME PATH CLASSPATH点击esc退出,输入:wq保存
使得配置立马有效
source /etc/profile
配置 bashrc
vi ~/.bashrc
在文件末尾加上
export JAVA_HOME=/opt/jdk export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
使得配置立马有效
source ~/.bashrc
查看成功: java -version
复制jar包到另一个目录
mkdir /opt/jar/
mv mnt/software/demo.jar /opt/jar/demo.jar
启动jar包
cd /opt/jar/
java -jar demo.jar
拉取mysql5.5
docker pull mysql:5.5
第一次启动mysql
docker run --restart=always --name mysql -p 1105:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.5
拉取redis
docker pull redis
启动redis
docker run --restart=always -d --name redis -p 6379:6379 -d 7614ae9453d1
拉取java8
docker pull java:8
启动java8并启动jar包
docker run --name java --restart=always -i -t -v C:\Users\lwh\Desktop\docker:/data/jars/ -p 8081:8081 -d d23bdf5b1b1b /bin/bash -c 'java -jar /data/jars/demo.jar'
根据Dockerfile生成镜像
docker build -t 镜像名称 . #注意最后还有一个.(在不同系统甚至不同物理机上再导入会报错,不推荐)
docker commit 容器ID 镜像名:版本号 #容器打包成镜像(版本号尽量是数字)
docker save -o 文件名.tar 镜像名:版本号 #镜像导出
docker load -i 文件名.tar #镜像导入