1.拉取 镜像
docker pull fauria/vsftpd
2.启动容器
在223服务器保存的 ftp服务地址 /mnt/data/ftp
docker run -d -v /mnt/data/ftp:/home/vsftpd -p 20:20 -p 2121:21 -p 21100-21110:21100-21110 -e FTP_USER=myuser -e FTP_PASS=mypass -e PASV_ADDRESS=192.168.10.224 -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 --name vsftpd --restart=always fauria/vsftpd
执行时 会出现
docker: Error response from daemon: Conflict. The container name "/vsftpd" is already in use by container "0649a2c9fe3729f3ddeadf849ef299b1bcf8fa1406159f7e6c2b75f6a25ab319". You have to remove (or rename) that container to be able to reuse that name.
See 'docker run --help'. 执行 后 会发现 之前启动失败的容器还在 需要重新进行修改 将之前启动失败的容器删除掉docker ps –a
docker rm <查询到的容器的id > 上边查询到的
3. 进入容器
docker exec -i -t vsftpd bash 进去docker
vi /etc/vsftpd/virtual_users.txt 编辑配置文件写入用户跟密码
mkdir /home/vsftpd/user 建立新用户文件夹
/usr/bin/db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db 写入数据库
docker restart +(虚拟机运行的 imageId) 重启服务
重启后访问对应的 服务器 端口,便可以登录 ftp 服务
docker 复制另外一个镜像 启动时启动当前的tomcat 并重命名
docker run -d -p 8099:8080 -v /mnt/data/docker-file/FILE_MANAGE_PRJ:/usr/tomcat/webapps/ --name FILE_MANAGE_PRJ_tomcat -d tomcat
docker 发布tomcat 项目单独挂载到本地文件夹
执行命令 通过挂载方式 docker tomcat 发布当前将要发布的项目
docker run -d -v /mnt/data/docker-file/FILE_MANAGE_PRJ/FILE_MANAGE_PRJ:/usr/local/tomcat/webapps/FILE_MANAGE_PRJ -p 10001:8080 file_tomcat
docker cp -a
docker 查考容器的长 id
docker inspect -f '{{.ID}}' python
docker 将文件夹 cp 到容器中
docker cp -a
docker cp -a /mnt/data/docker-file/FILE_MANAGE_PRJ/ 93e9c5401015:/usr/local/tomcat/webapps/
docker运行容器
docker run -it --rm –p 10001:8080 file_tomcat
docker run -it --rm –p 10002:8080 file_tomcat
docker 后台启动 ,不显示日志 打印
docker run –d -p 1001:8080 meihua_tomcat
docker 查看容器日志
docker logs -f -t --since="2018-10-10" --tail=100 meihua_tomcat
--since : 此参数指定了输出日志开始日期,即只输出指定日期之后的日志。
-f : 查看实时日志
-t : 查看日志产生的日期
-tail=10 : 查看最后的10条日志。
edu_web_1 : 容器名称
项目 发布
(*******使用已经启动的容器***********)
将要发布的文件上传到 对应的docker服务宿主计算机
/mnt/data/docker-file/ 项目名
将文件复制到的容器
docker cp -a /mnt/docker-file/项目名/ 3a3478726679:/usr/local/tomcat/webapps/项目名/
将正在运行的 ,已经上传文件的容器 编程成一个新的容器
docker commit -m “提交容器注释” –a “容器作者” <容器id/ 容器名称> <新的容器名称>
启动新的 docker 容器 (后台启动 ,不显示日志信息)
docker run –d -p 1003:8080 <新建的容器名称 >
// 给将要运行的 容器起一个名字 方便后边的 日志查看(*需要手动输入,不然会报错*)
重新命名容器名称 将要运行的镜像名称/镜像id
docker run –itd -p 10003:8080 --name changan changan_tomcat
错误:
Unable to find image 'chagnan_tomcat:latest' locally
docker: Error response from daemon: pull access denied for chagnan_tomcat, repository does not exist or may require 'docker login'.
以上错误是在容器运行时已经存在运行的容器
可以详细查看 已经运行 过的容器 列表 docker ps –a
删除掉重复名称的 docker image 删除命令 docker rm <容器名称>
根据启动的容器的名称 docker ps 中的name 查看 容器的日志信息 (查看日志信息)
docker logs –f --tail=100 upbeat_perlman