Docker使用
查看docker指令
docker —help
(以centos镜像为例)
拉去centos镜像(如果不指定版本默认拉取latest镜像)
docker pull centos
查看/删除本地镜像
docker images docker rmi centos
后台运行本地镜像且指定容器为centos
docker run -it —name=centos centos bash
进入centos容器
docker exec -it centos bash
查看运行中/所有(包括停止)容器、关闭/启动容器
docker ps docker ps -a docker start centos docker stop centos
Dockerfile
Nginx的安装(centos下)
创建nginx.repo文件
vi nginx.repo
(写入内容:)
name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true
创建dockerfile目录创建Dockerfile文件
vi Dockerfile (写入内容:) FROM centos COPY ./nginx.repo /etc/yum.repos.d/nginx.repo RUN yum install yum-utils -y RUN yum install nginx -y
构建docker的镜像文件
docker build -t mynginx:v1 .
运行mynginx镜像
docker run —name mynginx -p 80:80 -dit mynginx:v1 bash
测试访问(!!!!不是127.0.0.1!!!!!)
安装jdk
再/usr下新建jdk目录
mkdir jdk
下载jdk的tar包到 /usr/jdk目录下
新建Dockerfile文件
vi Dockerfile
写入
FROM centos RUN mkdir /usr/local/jdk WORKDIR /usr/local/jdk ADD jdk-8u191-linux-x64.tar.gz /usr/local/jdk/ ENV JAVA_HOME /usr/local/jdk/jdk1.8.0_191/ ENV PATH $JAVA_HOME/bin:$PATH
构建镜像
docker build -t jdk1.8:v1 .
运行镜像并进入
docker run -dit —name=jdk jdk1.8:v1 bash docker exec -it jdk bash
安装tomcat、jdk、mysql(直接docker pull)并且部署简单的web项目
安装配置jdk,安装配置tomcat
FROM centos ADD jdk-8u191-linux-x64.tar.gz /usr/ ENV JAVA_HOME /usr/jdk1.8.0_191 ENV PATH $JAVA_HOME/bin:$PATH ADD ./apache-tomcat-8.5.78.tar.gz /usr/ ENV TOMCAT_HOME=/usr/apache-tomcat-8.5.78 ENV PATH=$PATH:$JAVA_HOME/bin:$TOMCAT_HOME/bin CMD startup.sh && tail -f /usr/apache-tomcat-8.5.78/logs/catalina.out
构建镜像
docker build -t demo:v1 .
运行镜像容器
docker run —name demo -dit -p 8080:8080 -v /usr/logs:/usr/apache-tomcat-8.5.78/logs/ -v /usr/webapps:/usr/apache-tomcat-8.5.78/webapps demo:v1
查看tomcat的webapps项目是否自动解压
cd webapps ls
Docker私有化部署
配置Docker镜像加速
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-‘EOF’ { “registry-mirrors”: [“https://q86fcg9k.mirror.aliyuncs.com“] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
创建个人实例、命名空间和镜像仓库,在访问凭证中设置固定密码
登录Dokcer Registery
docker login —username=wjx199933 registry.cn-chengdu.aliyuncs.com
将redis镜像推送到Registery
docker tag redis:6.2.6 registry.cn-chengdu.aliyuncs.com/wjx199933/demo:myredis1 docker push registry.cn-chengdu.aliyuncs.com/wjx199933/demo:myredis1
将redis镜像拉取到本机
docker pull registry.cn-chengdu.aliyuncs.com/wjx199933/demo:myredis1