在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4901|回复: 6

[原创] WIN下使用Synopsys docker使用指南

[复制链接]
发表于 2021-10-10 14:08:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
欢迎关注公众号 摸鱼范式
20201016153807.png
前言
本教程通过win10下的docker实现,过程简单,不需要自己进行破解,个人认为还是比虚拟机方便些的。
镜像是由网友制作的,eetop链接为:http://bbs.eetop.cn/thread-883833-1-1.html
仅供个人学习使用
win10下安装docker
在官网找到win10的docker安装包,进行安装
下载稳定版即可
20201016143347.png
使用前要安装wsl2,作为docker在win10下的后端支持
20201016152214.png
下载好以后直接双击安装即可
docker配置
在拉取镜像之前,先为docker设置镜像加速器,推荐阿里云的docker镜像加速服务
注册以后,进入控制台,容器镜像服务->镜像加速器
20201016144148.png
然后打开docker的设置界面,Docker Engine,将刚刚的链接复制到下面
20201016144151.png
应用并重启即可。
默认的docker的目录是在c盘下的,镜像将来会占用c盘空间,接下来移动docker的目录
首先关闭docker,然后创建一个目录D:\SoftwareData\wsl\docker-desktop-data
打开cmd,wsl -l -v可以看到由有两个docker,我们只需要移动第二个就可以了
20201016144545.png
依次执行,
wsl --shutdown
wsl --export docker-desktop-data D:\SoftwareData\wsl\docker-desktop-data\docker-desktop-data.tar
检查以下目标目录有没有生成对应的文件docker-desktop-data.tar
20201016144729.png
wsl --unregister docker-desktop-data
wsl --import docker-desktop-data D:\SoftwareData\wsl\docker-desktop-data\ D:\SoftwareData\wsl\docker-desktop-data\docker-desktop-data.tar --version 2
移动完成
启动docker容器
通过开始菜单启动docker以后,打开cmd,拉取镜像docker pull phyzli/ubuntu18.04_xfce4_vnc4server_synopsys2016
大概有十几G,耐心等待。
20201016145136.png
镜像拉取完毕以后,启动镜像docker run -it -p 5902:5902 -p 1234:22 --hostname lizhen --mac-address 02:42:ac:11:00:02 -v //d/mydata:/mnt/mydata phyzli/ubuntu18.04_xfce4_vnc4server_synopsys2016
-p 5902:5902是进行端口映射,这个端口是用来VNC连接的,后面-p 1234:22,是用来ssh连接的,--hostname lizhen --mac-address 02:42:ac:11:00:02是在配置主机名和mac地址,和license绑定的,不能修改。-v //d/mydata:/mnt/mydata是将win10下的目录//d/mydata挂载到容器的/mnt/mydata上,便于数据交换。
使用ssh连接的方式是因为当前存在一些bug,docker exec -it ee bash方式进入容器的话,编译会出现错误,通过ssh则不会出现问题。
进入到容器内部以后就可以使用了,每次进入都需要使用命令lmgrd激活license
旧版本的镜像没有设置开机启动license,现在新版本的镜像不需要每次进入都使用lmgrd激活license了,可以省略这一步
20201016145617.png
测试一下vcs是否正常,进入到我们挂载的目录mnt/mydata,下面是tb.sv的内容
module tb ();

initial begin
  $display("hello vcs");
end

endmodule
vcs tb.sv 进行编译,然后./simv进行仿真
20201016150039.png
接下来试一下vnc远程桌面,通过命令vncserver -geometry 1920x1080 :2在容器内启动vnc
20201016150609.png
win10中打开vncviewer,配置连接,地址是127.0.0.1:5902
20201017124439.png
进行连接,连接密码为zhenchen
20201017124508.png
进入图形化界面
20201016150939.png
下面试一下vcs和verdi的联合仿真,同样还是前面的tb.sv
vcs tb.sv -debug_all -lca -kdb
./simv -gui=verdi
20201016152153.png
接下来测试ssh连接,首先要修改一下容器的root密码,因为ssh并没开放root密码为空登录,默认的root密码是空的。通过命令passwd即可修改密码。
20210902234302.png
然后再开一个命令行,通过命令 ssh -p 1234 root@127.0.0.1就能够通过ssh远程访问
20210902234548.png

其他
进入容器后,直接exit会退出容器,如果在启动容器时加上-d,容器会在后台继续运行
通过docker ps -a可以查看容器的状态
20201016151556.png
如果想要再启动容器,可以通过docker start ee启动容器,ee是容器ID的前两位,不用全部打完也可以
启动容器后如果要进入容器,通过指令docker exec -it ee bash就能进入了
20201016151809.png
删除容器可以通过指令docker rm -f ee,删除容器不会把刚刚挂载的文件夹删除,不用担心。
追加
原作者还提供了另外的几个镜像
phyzli/centos8_xfce4_tigervnc_hspice2010,2060年到期,需要lmgrd;
phyzli/centos8_xfce4_tigervnc_virtuosoic617_mmsim15_calibre2015,virtuoso永久,calibre2015 4963年到期,不需要挂载license;
这两个镜像的hostname和mac地址都和synopsys2016一致。

 楼主| 发表于 2021-10-10 17:29:52 | 显示全部楼层
 楼主| 发表于 2021-10-10 17:51:37 | 显示全部楼层
eetop排版不太行,看这里的排版比较舒服,https://www.cnblogs.com/icparadigm/p/13827684.html
发表于 2021-10-10 18:51:18 | 显示全部楼层
支持一下,对docker还不熟
发表于 2022-11-16 09:37:26 | 显示全部楼层
感谢分享
发表于 2023-9-13 17:49:04 | 显示全部楼层
出现一下报错:docker: Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:1234 -> 0.0.0.0:0: listen tcp 0.0.0.0:1234: bind: An attempt was made to access a socket in a way forbidden by its access permissions.
可以尝试在管理员权限的终端中输入:
net stop winnat
net start winnat
参考源:https://blog.csdn.net/u012558210/article/details/127999746
发表于 2024-9-12 18:58:47 | 显示全部楼层
非常尊重你的工作。我們正在等待新產品
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-23 04:14 , Processed in 0.022466 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表