Hi Jake,

I have just simply created a linuxptp container image using a Dockerfile like 
the following:

FROM ubuntu:latest
RUN apt-get update && \
    apt-get install -y linuxptp && \
    rm -rf /var/lib/apt/lists/*

Next, I start the containers using the following commands:
# docker run -d -v /var/run/:/var/run/ —privileged —net=host —name ptp-server 
{image_name} /usr/sbin/ptp4l -i enp0s25 -m -q -4 -H

# docker run -d -v /var/run/:/var/run/ —privileged —net=host —name phc2sys 
{image_name} /usr/sbin/phc2sys -s CLOCK_REALTIME -c /dev/ptpX -w -m -q

By mapping the /var/run/ folder from the host OS to the /var/run/ folder of the 
container by using the -v option (mount volume to container), you can easily 
give the container access.

Furthermore, I managed to clear the synchronisation problem I was facing. The 
problem was due to the e1000e driver apparently. I must honestly say I do not 
know for sure what the problem of the driver exactly was, but by updating the 
e1000e driver on my CoreOS (PTP Grandmaster) server from version 3.2.6-k to 
3.4.0.2 I managed to get rid of the synchronisation problem with the extreme 
high offsets.

So basically I am now running the following setup, where both the master as 
well as the client run the 3.4.0.2 version of the e1000e driver:
High Resolution Oscillator FPGA —> NTP Shared Memory —> System Clock (Through 
NTP) —> PHC Grandmaster (Through phc2sys) —> PHC Client —> System Clock 
(Through phc2sys) —> NTP synchronising to LOCAL (127.127.1.0) —> Other NTP 
Clients

All ptp4l AND phc2sys instances in this scenario are running inside containers 
on Docker!

Thanks for your support and interest!

Jord


On 27 Jun 2018, at 00:09, Keller, Jacob E 
<jacob.e.kel...@intel.com<mailto:jacob.e.kel...@intel.com>> wrote:

-----Original Message-----
From: Jord Pool [mailto:jord.p...@outlook.com]
Sent: Monday, June 18, 2018 11:49 AM
To: Richard Cochran <richardcoch...@gmail.com<mailto:richardcoch...@gmail.com>>
Cc: Keller, Jacob E 
<jacob.e.kel...@intel.com<mailto:jacob.e.kel...@intel.com>>; Cliff Spradlin via 
Linuxptp-users
<linuxptp-users@lists.sourceforge.net<mailto:linuxptp-users@lists.sourceforge.net>>
Subject: Re: [Linuxptp-users] Synchronisation

Hi Richard,

I must honestly admit that before trying this setup on my production systems I
had tested it and got it to work on a different environment (all Dockerized):

System Clock (Client) —> Physical Hardware Clock (GM) —> Physical Hardware
Clock (Client) —> System Clock (Client)

The test environment existed of two HP Z440 Workstation PC’s running Ubuntu
16.04. On these two systems I have used the exact same Docker image of
linuxptp and the exact same commands for starting the synchronisation
processes dockerized (ptp4l and phc2sys).

On the HP Z440 environment, the synchronisation processes worked (still work)
flawlessly. These machines also use the e1000e network driver (3.2.6-k version
and later the 3.4.0.2 (latest) version). The network adapter in the Z440’s is 
the
Intel Ethernet Connection I218-LM. The HP Z440’s have only one NIC and
therefore (?) also just one PTP device; /dev/ptp0.

So basically, I had got it working before (still running steady) in containers 
on my
test environment. But thus not on the production systems with multiple NICs /
MAC addresses.

Jord

I'm surprised you got this working in a containerized environment. How are you 
getting the network and ptp interfaces into the container?

Thanks,
Jake

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Linuxptp-users mailing list
Linuxptp-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxptp-users

Reply via email to