Linux之Docker手动创建Docker容器
咱虚拟机多,硬盘大,CPU好,任性,怎滴?。
1.手动制作docker镜像
1)启动一个基础容器
docker run -it centos:6.9 yum
2)在容器中安装服务
curl -o /etc/yum.repos.d/CentOS-Base.repo
http://mirriors.aliyun.com/repo/Centos-6.repo
yum install openssh-server -y
service sshd restart
echo '123456'|passwd --stdin root
3)把已经安装好服务的容器,提交为镜像
docker container commit 5617e5d6284b centos6.9_ssh:v1
4)测试镜像的功能:
docker run -d -p 1022:22 centos6.9_ssh:v1 /usr/sbin/sshd -D
2. 手动制作一个支持SSh+nginx的镜像
1)启动一个基础容器
docker run -it -p 80:80 -p 1023:22 centos6.9_ssh:v1 /bin/bash
2)在容器中安装服务
echo '192.168.15.84 mirrors.aliyun.com ' >>/etc/hosts (生产中可省)
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/Centos-6.repo
yum install nginx -y
3)把已经安装好服务的容器,提交为镜像
docker commit ea6a76ced04b centos6.9_ssh_nginx:v1
添加了一个vi /init.sh
#!/bin/bash
service sshd restart
nginx -g 'daemon off;'
docker commit ea6a76ced04b centos6.9_ssh_nginx:v2
4)测试镜像的功能:
docker run -d -p 1025:22 -p 82:80 centos6.9_ssh_nginx:v2 /bin/bash /init.sh
docker ps -a -l #查看最新执行的
补充:
5)自定义容器镜像的密码:
docker exec -it e267816e4187e /bin/bash
vi /init.sh
#!/bin/bash
echo "SSH_PWD" |passwd --stdin root
service sshd restart
nginx -g 'daemon off;'
read escape sequence #重新提交镜像
docker commit e267816e4187e centos6.9_ssh_nginx:v3
docker run -d -p 1026:22 -p 86:80 -e "SSH_PWD=1qwe@ASD" centos6.9_ssh_nginx:v3
/bin/bash /init.sh
===================================================================
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix